The world today is flooded with data. This also applies to astroimaging amateurs. Modern CMOS cameras have a large number of pixels and a single subframe after converting to RGB color can occupy several hundreds of megabytes. Also, low read noise in CMOS cameras tempts to use short subframe exposure time and to collect a large number of frames. The extreme case is planetary imaging, where high-resolution movie clips are shot, and then aligned, filtered, and stacked. This way single Moon mosaic image can contain hundred or more gigabytes of raw data. Fortunately, disk space is becoming cheaper, and also CPU power is now very affordable. One way or another it is good to know the astronomy software performance.
Software used
But how much calculating power is required for astroimaging tasks? Together with a few astromates I decided to do some tests with selected applications at some common tasks, like aligning or stacking images, applying some demanding filters, or stacking images from the movie clip. Here are the test cases used with three different applications:
- PixInsight – star alignment of 25 frames, 16Mpx each
- PixInsight – image integration of 25 frames, 16Mpx each
- PixInsight – star mask of integrated frames
- PixInsight – deconvoultion (20 iterations) of integrated frames
- MaxIm DL 6 – star alignment of 25 frames, 16Mpx each
- MaxIm DL 6 – image stack of 25 frames, 16Mpx each
- AutoStakkert 3 – stack of 1.2GB avi movie with best 100, 200, 300 and 400 frames
Machines used
Tests of astronomy software performance were made on the same data with the same settings for each case. For some machines, it was not possible to perform some tests due to different reasons. And the machines that were used are:
- Dell 745 desktop with Core 2 Duo E6600 CPU (2 cores, 2 threads), SSD drive, 4GB RAM, Win7 x64
- Lenovo T420s laptop with i5-2520M CPU (2 cores, 4 threads), SSD drive, 16GB RAM, Win10 x64
- the same as above with i5-2520M HyperThreading disabled (2 cores, 2 threads)
- Toshiba Satellite laptop with i3-4005U CPU (2 cores, 4 threads), SSD drive, 8GB RAM, Win10 x64
- Lenovo laptop with i5-3320M CPU (2 cores, 4 threads), SSD drive, 16GB RAM, Win10 x64
- Lenovo Legion Y720 laptop with i7-7700HQ CPU (4 cores, 8 threads), SSD drive, 16GB RAM, Win10 x64
- desktop computer with Pentium D940 CPU (2 cores, 2 threads), HDD drive, 4GB RAM, Win7 x64
- laptop computer with i5-8500 CPU (6 cores, 6 threads), SSD drive, 16GB RAM, Win10 x64
- mini PC Esprimo Q5030 with Core 2 Duo P8700 CPU (2 cores, 2 threads), SSD drive, 4GB RAM, Win7 x64
- MacBook Pro with i7-7820HQ CPU (4 cores, 8 threads), SSD drive, 16GB RAM, macOS High Sierra
- Dell 7020 desktop with i7-4790 CPU (4 cores, 8 threads), SSD drive, 16GB RAM, Win10 x64
- the same as above with i7-4790 HyperThreading disabled (4 cores, 4 threads)
- desktop computer with AMD Ryzen 3 X1300 CPU (4 cores, 4 threads), SSD drive, 8GB RAM, Win 10 x64
Performance tests results
It pretty much looks that the most significant factor in the three tested applications is CPU. The test results with similar CPUs but different platforms and even operating systems gave similar results. And the results are presented in the table below. After the columns with machines’ specifications, there are four blue columns with PixInsight test results, two green columns with MaxIm DL results, and one brown with AutoStakkert results. The last column is overall astronomy software performance normalized to the most efficient machine. All test results are given in seconds.
Results are not quite surprising, so not much comment is needed 🙂
Results review
PixInsight takes much power from CPU. Multitask processes (like star alignment or image integration) scales very well with the number of cores and CPU clock (later in the article I will compare disk performance). Other processes like star mask or deconvolution also seem to take advantage of both core number and clock – although the relation is just a bit different.
MaxIm DL 6 – here situation is much simpler. MaxIm seems to use only one core and scales only with the CPU clock. Though for the Pentium D940 processor this application achieved very poor results despite the high clock rate. It may be caused by CPU architecture – maybe some command set is missing in this old processor?
AutoStakkert 3 likes both high clocks and cores very much, though the difference between i7 4C and i5 6C is quite small. Either AS! does not scale above 4 cores well, or i7 architecture is better used with AutoStakkert.
After disabling HyperThreading (that eliminated CPU logical cores) results for applications that use multicore dropped by about 15-20% (rows 4/7 and 9/10).
There is only one AMD processor in the table and only one test has been made. In fact, this result should be lower in the table (you can compare AS! test time directly).
Since astroimaging data is usually quite big also at hard drive I wanted to test disk performance in the tasks that load the disk – like image align and stack in PixInsight. And the results in seconds are in the table below.
As you can see there is not much difference in performance between SSD and “classic” hard disk drive. The whole process depends much more on CPU power than disk speed. Till the moment you use a portable USB2.0 disk drive – then you can expect some performance drop, at least for the image alignment process, where many disk operations are done. But – it is still usable.
Summary
These astronomy software performance results are not quite surprising 🙂 What I found unexpected is MaxIm DL performance – this software works with the one core only. It is still quite fast though. Other tested applications (PixInsight and AutoStakkert!) utilize whole available CPU power and you can expect results proportional to the CPU benchmarks.
I also found quite surprising the fact that hard disk demanding operations in PixInsight (like image alignment) takes no benefit from using SSD drive when compared to 5400rpm rotating disk drive.
Special thanks to cyberboss, Jacek E. and tayson.82 users from forumastronomiczne.pl and for 3rd_rock_resident from stargazerslounge.com for sharing their test results. Also thanks to DarX86 for sharing the Moon movie clip for tests.
Clear skies!
Cover photo by Joshua Sortino on Unsplash