|
GraphicsMagick(GM)是ImageMagick(IM)的可替代的图片处理方案,但是, GraphicsMagick比ImageMagick具有性能高,稳定的优点. 而且, IM能实现的,GM都可以做到.IM的最大问题就是代码变动太大,不够稳定. GM相对而言要稳定对了, 此外体积也没有GM那么臃肿.Flickr 从2004年后就放弃了ImageMagick而使用GraphicsMagick, 可谓GM最佳的成功案例.GraphicsMagick性能提升的一个亮点就是支持OpenMP, 通过OpenMP的优化,性能提升数倍以上.虽然IM也能够支持OpenMP,但即便如此, 也比GM要慢很多.ImageMagick也无法能够使用Icc进行支持OpenMP的编译, 而GraphicMP则可以. 为了了解OpenMP对性能有何影响,以及,icc 和 gcc相比,有多大的差异, 我做了以下简单的测试:1. 测试环境* CentOS 5.4* GCC v4.1.2-46.el5_4.1* PowerEdge R710(Intel(R) Xeon(TM) CPU 3.00GHz *2)2. 编译脚本build_icc() {OPENMP=’-openmp’CC=’icc’ \CXX=’icpc’ \LD=’xild’ \CFLAGS=”-std=gnu99 $OPENMP -O3 -ip -restrict -xSSE3 -axSSE3,SSSE3,SSE4.1,SSE4.2″ \CXXFLAGS=” $OPENMP -O3 -ip -restrict -xSSE3 -axSSE3,SSSE3,SSE4.1,SSE4.2″ \CPPFLAGS=’-I/opt/local/include’ \LDFLAGS=’ -L/opt/local/lib -L/usr/lib64 ‘ \LIBS=’-liomp5 -ltcmalloc_minimal [...] |
|