Zerene stacking with multicore processors? limits, configs?

A forum to ask questions, post setups, and generally discuss anything having to do with photomacrography and photomicroscopy.

Moderators: ChrisR, Chris S., Pau, rjlittlefield

dlg
Posts: 26
Joined: Wed Nov 04, 2015 11:47 pm

Zerene stacking with multicore processors? limits, configs?

Post by dlg »

Apple just launched its now iMacPro with up to 18 cores. Can Zerene use all of those cores? I looks to me as if Zerene can use them, but would be nice to know before buying.

Are number of cores and RAM correlated or independent?

I currently use a MacPro 2013 (can) with 6 cores and 32GB RAM to stack up to about 200 images of 300 MB 16bit files from Canon 5DsR. [runs about 10-15 minutes, and can keep coffee warm on top of can] When I look at Activity Monitor, it shows all 12 bars (6 cores, 2x hyper threading) going full throttle with memory pressure pretty low (~20% range, all green).

If I do the same on a 18 core machine, will 32 GB of RAM be sufficient (cores and RAM independent), or should I stock up to 64 GB (cores & RAM correlated)?

I may also hold off till the next MacPro comes out, but same questions will apply at that time.

Thanks for any insights!

rjlittlefield
Site Admin
Posts: 20982
Joined: Tue Aug 01, 2006 8:34 am
Location: Richland, Washington State, USA
Contact:

Post by rjlittlefield »

In the role of support@zerenesystems.com, here's what I recently wrote to another fellow who asked a similar question:
Have you tested 4 vs 8 vs 10 vs 18 core CPUs at all? Does ZS scale with CPUs?
My main development platform is 6 cores.

Yes, it scales, though not perfectly linearly of course.

All of the computationally expensive sections are parallelized, using the same number of threads as there are logical processors (2*cores if hyperthreading is turned on).

There are still some single-threaded operations, especially for image I/O, but if the option is selected to overlap I/O and computation, those mostly do not become serial sections.
The amount of RAM does not scale with number of processors, unless you decide to process multiple stacks at the same time. That technique can help to overcome whatever serial-section problem remains even after overlapping I/O and computation.

For highest performance, I recommend allocating about 200 megabytes per each 1 megapixel, so about 10 GB for a 50 megapixel camera. Using that model, 32 GB of RAM is plenty to run 2 or 3 stacks at the same time.

There's an extended discussion of performance issues in http://www.photomacrography.net/forum/v ... 699#141699 and the surrounding thread. Be sure to read page 2 of the thread.

--Rik

dlg
Posts: 26
Joined: Wed Nov 04, 2015 11:47 pm

Post by dlg »

Thanks Rik! I knew you would have a good answer! That things are not perfectly linear, that is absolutely clear. I hope I will see a decent speed up from 6 to at least 18 (or even rumored 32 cores) on a new Mac Pro.

Batch running DxO and Zerene at the same time pretty much puts the computer to a crawl for anything else.

Post Reply Previous topicNext topic