We have a cluster of 12 nodes (virtualized) which run ImageMagick processed, started by a Go application (os.Exec(). This works fine, but it is not very fast. Therefore I'm looking for a way to speedup the "convert" tool. Here are the specs:
- Virtualised hardware
- 7.63 GiB
- Intel(R) Xeon(R) CPU E5-2667 v3 @ 3.20GHz
- RedHat 7.3
Especially when ImageMagick needs to process large jpegs/tiffs/etc, this simply takes a long time? So how can we improve this? More CPU? More cores? Other question: does ImageMagick make use of fast GPUs?
What hardware works best?
-
- Posts: 12159
- Joined: 2010-01-23T23:01:33-07:00
- Authentication code: 1151
- Location: England, UK
Re: What hardware works best?
It depends on the operations.rogierl wrote:More CPU? More cores? Other question: does ImageMagick make use of fast GPUs?
Most operations (but not all) can use multiple cores.
A small number of operations use GPU.
The first check is to ensure you don't run out of memory, because IM will use disk instead, with horrible performance.
If you are doing the same sequence of operations on a number of large images, what is the CPU usage? If this is small, eg 25% or less, the clock time may be reduced be creating multiple jobs, each processing a small number of images, and running them at the same time, so you use all the cores.
snibgo's IM pages: im.snibgo.com
Re: What hardware works best?
@snibgo, could you give a recommendation about hardware?
As I have a similar configuration except RAM. I've only 512 MB RAM. I'm using wand C API.
I have tested just with normal resize operation on image.
And when I perform multiple HTTP request continuously, my CPU usage goes to 100% and if I fired more than 300 request in 30 seconds I have got memory allocation error so I think I need to increase the RAM.
As I have a similar configuration except RAM. I've only 512 MB RAM. I'm using wand C API.
I have tested just with normal resize operation on image.
And when I perform multiple HTTP request continuously, my CPU usage goes to 100% and if I fired more than 300 request in 30 seconds I have got memory allocation error so I think I need to increase the RAM.
-
- Posts: 12159
- Joined: 2010-01-23T23:01:33-07:00
- Authentication code: 1151
- Location: England, UK
Re: What hardware works best?
The RAM requirement depends on how much work you need to do at the same time, which depends on the number of images in memory and the size of each. Each pixel typically needs 8 bytes.
512 MB is a very small amount. This is enough for only one image 8000x8000 pixels.
My laptop has 12 GB memory, of which typically 8 GB is free, but I sometimes run out so IM has to use disk, which is very slow.
512 MB is a very small amount. This is enough for only one image 8000x8000 pixels.
My laptop has 12 GB memory, of which typically 8 GB is free, but I sometimes run out so IM has to use disk, which is very slow.
snibgo's IM pages: im.snibgo.com
Re: What hardware works best?
@snigbo, you are right. I tested with higher resolution image and IM used 70% to 80% of RAM.
It works fine with smaller images.
It works fine with smaller images.