Mercury: Enabling remote procedure call for high-performance computing

Mercury: Enabling remote procedure call for high-performance computing
复制标题

Mercury:启用远程过程调用以实现高性能计算

DOI:
--
复制
发表时间:
2013
期刊:
IEEE International Conference on Cluster Computing
影响因子:
--
通讯作者:
R. Ross
R. Ross
中科院分区:
--
文献类型:
--
作者:
Jérome Soumagne;D. Kimpe;Judicael A. Zounmevo;M. Chaarawi;Q. Koziol;A. Afsahi;R. Ross

文献摘要

被引文献

相似文献

远程过程调用(RPC)是一种被分布式服务广泛采用的技术。这种技术现在越来越多地用于高性能计算(HPC)的上下文中,它允许将例程的执行委托给远程节点,这些节点可以被搁置起来,专门用于特定的任务。然而,现有的RPC框架假定基于套接字的网络接口(通常在TCP/IP之上),这并不适合HPC系统,因为该API通常不能很好地映射到这些系统上使用的本机网络传输,从而导致较低的网络性能。此外,现有的RPC框架通常不支持处理大型数据参数,例如在读或写调用中发现的那些参数。我们在本文中提出了一个异步RPC接口,称为Mercury,专门设计用于HPC系统。该接口允许异步传输参数和执行请求,并提供对大数据参数的直接支持。为了允许任何函数调用,Mercury是通用的。此外,网络实现是抽象的,允许轻松地移植到未来的系统和有效地使用现有的本地传输机制。
Remote procedure call (RPC) is a technique that has been largely adopted by distributed services. This technique, now more and more used in the context of high-performance computing (HPC), allows the execution of routines to be delegated to remote nodes, which can be set aside and dedicated to specific tasks. However, existing RPC frameworks assume a socket-based network interface (usually on top of TCP/IP), which is not appropriate for HPC systems, because this API does not typically map well to the native network transport used on those systems, resulting in lower network performance. In addition, existing RPC frameworks often do not support handling large data arguments, such as those found in read or write calls. We present in this paper an asynchronous RPC interface, called Mercury, specifically designed for use in HPC systems. The interface allows asynchronous transfer of parameters and execution requests and provides direct support of large data arguments. Mercury is generic in order to allow any function call to be shipped. Additionally, the network implementation is abstracted, allowing easy porting to future systems and efficient use of existing native transport mechanisms.