Best CPU for ImageMagick performance

Questions and postings pertaining to the usage of ImageMagick regardless of the interface. This includes the command-line utilities, as well as the C and C++ APIs. Usage questions are like "How do I use ImageMagick to create drop shadows?".
Post Reply
Falesh
Posts: 5
Joined: 2012-03-21T08:12:37-07:00
Authentication code: 8675308

Best CPU for ImageMagick performance

Post by Falesh »

I've got a time sensitive application which needs to resize hundreds of images on a regular basis. What I would like to do is build the best computer I can to handle this. So, does anyone know which CPU is the best, Bulldozer, i5 2500k or something else? Also does the speed of the RAM influence the performance? Cheers!
User avatar
magick
Site Admin
Posts: 11064
Joined: 2003-05-31T11:32:55-07:00

Re: Best CPU for ImageMagick performance

Post by magick »

Best performance with ImageMagick comes from multi-core Intel chips with plenty of memory. Try quad or six core Xeon 5600 series or I7 with 3.0+ mhz ratings. 24MB or more memory is ideal. If you get 10,000 rpm disks, even better. If you are typically running multiple jobs at the same time, turn off OpenMP support (--disable-openmp). Prefer Linux over Windows for performance.
Falesh
Posts: 5
Joined: 2012-03-21T08:12:37-07:00
Authentication code: 8675308

Re: Best CPU for ImageMagick performance

Post by Falesh »

Thanks for that. Does Hyperthreading make much of a difference?
User avatar
magick
Site Admin
Posts: 11064
Joined: 2003-05-31T11:32:55-07:00

Re: Best CPU for ImageMagick performance

Post by magick »

You can test hyperthreading performance with the -bench option and OpenMP. It shows that ImageMagick, in general, does not benefit much from hyperthreading, but like any benchmark it depends on what you're doing. The only way to tell is to run your command with the -bench option with hyperthreading on and then off and compare the timing. The -bench option benchmarks your command line and shows efficiency for the number of threads from 1 to the number of cores ( x 2 for hyperthreading). Typically you will see an efficiency drop off as you begin to exceed the number of physical cores.
Post Reply