There is a new KNIME forum. You can still browse and read content from our old forum but if you want to create new posts or join ongoing discussions, please visit our new KNIME forum: https://forum.knime.com

Which Image Nodes already use multiple cores?

Member for

3 years 11 months joshuahoran

I am interested in speeding up my image manipulation by using all the physical cores on the processor (I have 6). Looking at my system monitor on Linux, it appears that the image nodes only use one core; therefore I should be able to wrap the slowest nodes in parallel chunk loops to distribute the workload over all 6 cores.

Before I go crazy with this, do any of the image nodes already distribute the work over multiple cores? If so I can focus my efforts on wrapping the other nodes.

Thanks!

Comments
Wed, 02/28/2018 - 10:03

Member for

6 years 4 months

gab1one

Most nodes do in fact not use multi threading natively, in many cases because the algorithms do not easily allow for parallel computation on the same image. In these cases using data parallel computation with the parallel chunk loop node can greatly improve your processing speed. I can recommend you not only wrap single nodes but larger branches of the workflow in the parallel loop nodes, as this will improve your overall throughput, as it reduces IO overhead.

As far as I can tell from a quick glance at our code base, the nodes that are multi threaded are those who perform the very complicated computations, some examples:

  • Align Image
  • GraphCut 2D
  • Morphological Image / Labeling Ops

best,

Gabriel

Wed, 02/28/2018 - 09:27

Member for

3 years 11 months

joshuahoran

Thanks for the information and thanks for answering all of these questions. The image nodes are great -- two thumbs up from this user!