29.12.2014 Views

Magellan Final Report - Office of Science - U.S. Department of Energy

Magellan Final Report - Office of Science - U.S. Department of Energy

Magellan Final Report - Office of Science - U.S. Department of Energy

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Magellan</strong> <strong>Final</strong> <strong>Report</strong><br />

challenges. Since each node could potentially run many virtual machine instances, the file system could see a<br />

multiplier <strong>of</strong> file system clients. If each node was running eight small instances (one on each core), then the file<br />

system would have to deal with eight times more clients. Furthermore, virtual machines are <strong>of</strong>ten terminated<br />

instead <strong>of</strong> performing a clean shutdown. This could lead to clients frequently joining and leaving the file<br />

system cluster. File systems like GPFS and Lustre employ timeout and heartbeat methods that assume a<br />

relatively stable client pool. Clients randomly disappearing could lead to long hangs while outstanding locks<br />

held by terminated instances were timed out.<br />

There are several potential methods to address these issues. One would be to project only the portions<br />

<strong>of</strong> the file system that the user owns into the virtual machine. This could be done using protocols like NFS<br />

and re-exporting the parallel file system. This option was explored by ALCF <strong>Magellan</strong> staff, but ran into<br />

challenges with Linux kernel and I/O libraries. Another approach would be to forward the file I/O operations<br />

to a proxy server that would have the file systems mounted. The operations would then be performed on<br />

the proxy server as the user who owned the virtual machine instance. The standard file system client would<br />

enforce the access controls.<br />

There are existing file system modules that use the Linux FUSE file system interface to forward I/O over<br />

connections like SSH. The performance over SSH would be poor, but would at least provide access to data.<br />

This method was used by the ALCF/LCRC project that built an extension <strong>of</strong> the Argonne LCRC Fusion<br />

within the OpenStack cloud and worked reasonably well. Alternatively, the I/O Forwarding Scalability Layer<br />

(IOFSL) project [2] is developing a high-performance I/O forwarding layer that could potentially help. While<br />

IOFSL is focused on developing an I/O forwarding system to support ultra-scale HPC systems, the same<br />

mechanisms can be used for virtual machines. These solutions would also help mitigate the scaling and<br />

stability challenges, since they would reduce the number <strong>of</strong> real clients handled by the file system and would<br />

act as a firewall between the virtual machines and the file system.<br />

9.8 Summary<br />

Applications with minimal communication and I/O perform well in cloud environments. Our evaluation<br />

shows that there is a virtualization overhead that is likely to get better with ongoing research. But the<br />

primary performance impact for HPC applications comes from the absence <strong>of</strong> high-bandwidth, low-latency<br />

interconnects in current virtual machines. Thus a majority <strong>of</strong> current DOE HPC applications will not<br />

run efficiently in today’s cloud environments. Our results show that the difference between interconnects<br />

is pronounced even at mid-range concurrencies. Similarly there is an I/O performance issue on virtual<br />

machines, and the absence <strong>of</strong> high-performance file systems further impacts the productivity <strong>of</strong> running<br />

scientific applications within the cloud environment.<br />

82

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!