We have created a new /ramdisk directory on the SSCC's Linux servers. This directory acts like regular disk space but files placed in it are actually stored in RAM, making it extremely fast. Two caveats:
While any program that uses intensive disk I/O might benefit from using /ramdisk, we anticipate that this will mostly be useful to SAS programmers since SAS is so dependent on disk I/O. In testing, we created a SAS program that wrote about a gigabyte of data first using network disk space (i.e a regular permanent data set), then local disk space (i.e. a temporary data set) and then /ramdisk.
Network:
real time 1:25.14
cpu time 4.90 seconds
Local disk:
real time 9.23 seconds
cpu time 7.90 seconds
/ramdisk:
real time 4.44 seconds
cpu time 4.44 seconds
(The local disk isn't really ten times faster than the network, but it is significantly faster and also cached using RAM already.)
While you can put data sets in /ramdisk directly (e.g. data '/ramdisk/mydata'; or libname ramdisk="/ramdisk";) the easy way to use it is to make it your work directory when you run SAS:
sas -work /ramdisk myprogram
Then use temporary data sets wherever possible (which is a good idea anyway).
Using /ramdisk for disk-intensive jobs will not only make them run faster, but also make them much less likely to cause slowdowns for others on the server.