Moravian instruments, Inc., source: http://www.gxccd.com/art?id=510&lang=409, printed: 29.4.2017 3:33:48
Main page Products Software
|SIPS v3.4.1 the Ryzen update is available for download||Updated: 12.4.2017|
|Introduction of AMD Ryzen R7 processors with 8 cores and 16 threads for a fraction of price of corresponding 8-core Intel Core i7 counterparts (or for a similar price like 4-core Core i7) brought high hopes for astronomers seeking faster processing of their images. Providing the clock speed and IPC (Instructions Per Clock) are similar, two-times the cores should bring two-times faster processing, right? But situation is not that simple, numerous published tests indicate that while the 8C/16T R7 sometimes outpaces the 8C/16T i7, but sometimes trails even the 4C/4T Core i5. Obviously, the R7 performance strongly depends on the program executed. This is why we introduced SIPS version 3.4.1, the Ryzen Update.|
When IBM choose the Intel processor as the core of its newly introduced PC (Personal Computer), it forced Intel to allow at last one more company to produce Intel-compatible processors to ensure supply of these chips in the case one vendor have some manufacturing problems. AMD become the second source of x86 CPUs, which now dominate servers, workstations and personal computers (or by other words all computers used for something more useful than posting selfies ;). Both companies have their ups and downs during the long history of x86 architecture evolution (e.g. the 64-bit version of Intel x86 architecture was developed and introduced by AMD), but in the recent years AMD was suffering from introduction of underdog x86 Bulldozer implementation and Intel Core CPUs run much faster while consuming much less energy and generating much less heat. But AMD did not surrender and built a new Zen architecture x86 CPUs, which are sold under the Ryzen brand and which almost leveled the technology with Intel. What is important, AMD is asking less money for Ryzen, so their CPUs are more affordable.
But there is a catch. The 8-core Ryzen CPU in fact consists of two 4-core units on the single piece of silicon. Each 4-core unit has its own caches and share memory bus with a second 4-core unit. Any software, trying to utilize all available cores without the overhead of keeping cache content synchronized, must take this into account (this is the reason why the Ryzen performance is sometimes stellar and sometimes so low).
When we run SIPS v3.4 on Ryzen R7 1700X for the first time, we were badly disappointed. The standard test Photometry batch, processing approximately 7 GB of raw images, run 34% longer of this new 8-core CPU compared to 4th generation Intel Core i7 4771 with only 4 cores. Some parts of the test run much faster on Ryzen, but the most computing intensive part needed 50% longer time, which caused the whole test was slower. Obviously the SIPS v3.4 thread arrangement did not fit Ryzen two computing clusters well.
It was soon obvious how to rearrange the SIPS threading architecture not to block execution by unnecessary cache conflicts and the result was surprising again, this time the surprise was very positive. R7 1700X went through the test batch two times faster the i7 4771, which is after all expectable because the IPC and clock rate of both CPUs are similar, only the number of cores is two times higher.
Because of several years delay between introduction of Core i7 and Ryzen R7 CPUs, used for this comparison, it is necessary to take into account also different memory speed (DDR4 2400 used with R7 vs. DDR3 1600 used with i7). Working frequency on the other side favors the Core (R7 works on 3.4 to 3.8 GHz, i7 runs at 3.5 to 3.9 GHz). The Intel Core processor of the latest 7th generation working on 4.2 to 4.5 GHz would narrow the gap to Ryzen, but cannot lower the execution time to one half to catch it. On the other side we did not use the fastest Ryzen R7 1800X available, which working frequencies are 200 MHz higher.
The SIPS version 3.4.1 (with a little exaggeration called the Ryzen update :) is available for download. Note that the code rearrangement affected also Intel processors — the Photometry batch test runs almost 7% faster, which is always welcomed. But for everybody, who updated to AMD Ryzen, the version 3.4.1 is a mandatory update.
SIPS is a freeware and can be downloaded from the Download section of this web site.