In specific situations a Solid State Drive (SSD) might help to improve the performance of DIANA.
To make DIANA run optimal DIANA needs to keep both the executable memory as well as the filos file in the system memory. In case this requirement is fullfilled a SSD will not help to improve performance.
In case you do not have enough memory in your system to hold both executable memory as well as filos file DIANA needs to access the disk drive to perform the analysis. Disk access always degrades system performance. Our advise in those cases is to install more system memory, not a faster disk drive like the SSD.
But what if your system cannot handle more memory? In those cases there are two options. The first one is naturally to replace the system with a system that has enough memory to handle the analysis in an optimal manner. As an alternative disk performance might be improved by installing a faster disk like an SSD.
We performed some tests to showcase the benefit of an SSD. We used a two year old workstation with the following specs:
- Dell Precision T3500
- Processor : One Intel Xeon W3520(2.66GHz,4.8GT/s,8MB,QC)-Memory runs at 1066MHz
- Memory : 12GB (6x2GB) 1066MHz DDR3 ECC-UDIMM
- Hard Drive : 2 * 80GB (10000RPM) Serial ATA with 16MB DataBurst Cache, RAID 1 (Mirroring) for 2 Hard Drive
- Graphics : 768MB Quadro Nvidia FX1800 - 2 DP, 1 DVI (1 DP-DVI, 1 DVI-VGA adapter)(MRGA16L)
- Operating system : Windows 7 Professional 64 bit Service Pack 1
- No page file
To this system we added the following SSD:
- OCZ RevoDrive3 X2 240GB Bootable PCIe Solid State Drive
SSD Drive Max Performance
Read: Up to 1500 MB/s
Write: Up to 1225 MB/s
Max Random Write 4KB (Aligned): 200,000 IOPS
We selected this drive because the PCIe Gen. 2 X4 connection is faster than a SATA 3 connection eliminating a potential bottleneck during our analysis.
To test the impact of the SSD we have selected a test with 7GB executable memory usage and 25,5GB filos file size. The executable memory fits well in the system memory but the filos file is way too big to be kept in memory. It is possible to expand the system memory to 24GB and although this would speedup the analysis it is still not enough. So instead we added the SSD.
On the mirrored system drive the analysis ran for 21313 seconds. During this time 5373 CPU seconds where spend and 1554 IO seconds. The rest of the elapsed time the analysis was basically waiting for the system drive to deliver data. As you can see there is a big gap between the time the CPU actually spend and the elapsed time.
When placing all analysis files on the SSD the analysis ran for 7849 seconds. During this time 5378 CPU seconds where spend and 1496 IO seconds.
It is clear that the SSD helps to improve performance in this case.