What hardware works best?

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
rogierl
Posts: 2
Joined: 2017-06-07T01:15:58-07:00
Authentication code: 1151

What hardware works best?

Post by rogierl » 2017-06-07T01:21:27-07:00

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?

snibgo
Posts: 12432
Joined: 2010-01-23T23:01:33-07:00
Authentication code: 1151
Location: England, UK

Re: What hardware works best?

Post by snibgo » 2017-06-07T01:50:27-07:00

rogierl wrote:More CPU? More cores? Other question: does ImageMagick make use of fast GPUs?
It depends on the operations.

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

rpatelob
Posts: 62
Joined: 2017-04-17T22:17:01-07:00
Authentication code: 1151

Re: What hardware works best?

Post by rpatelob » 2017-06-12T03:08:03-07:00

@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.

snibgo
Posts: 12432
Joined: 2010-01-23T23:01:33-07:00
Authentication code: 1151
Location: England, UK

Re: What hardware works best?

Post by snibgo » 2017-06-12T03:50:55-07:00

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.
snibgo's IM pages: im.snibgo.com

rpatelob
Posts: 62
Joined: 2017-04-17T22:17:01-07:00
Authentication code: 1151

Re: What hardware works best?

Post by rpatelob » 2017-06-12T05:51:03-07:00

@snigbo, you are right. I tested with higher resolution image and IM used 70% to 80% of RAM.

It works fine with smaller images.

Post Reply