ORCA: An Offloading Framework for I/O-Intensive Applications on Clusters

Abstract—This paper presents an offloading framework-ORCA- to map I/O-intensive code to a cluster that consists of computing and storage nodes. To reduce data transmission among computing and storage nodes. our offloading framework partitions and schedules CPU-bound and I/O-bound modules to computin...

Full description

Bibliographic Details
Main Authors: Ji Zhang, Xunfei Jiang, Yun Tian, Xiao Qin, Mohammed I. Alghamdi, Maen Al Assaf, Meikang Qiu
Other Authors: The Pennsylvania State University CiteSeerX Archives
Format: Text
Language:English
Subjects:
Online Access:http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.637.4492
http://www.eng.auburn.edu/~xqin/pubs/zhang_IPCCC12.pdf
Description
Summary:Abstract—This paper presents an offloading framework-ORCA- to map I/O-intensive code to a cluster that consists of computing and storage nodes. To reduce data transmission among computing and storage nodes. our offloading framework partitions and schedules CPU-bound and I/O-bound modules to computing nodes and active storage nodes, respectively. From developer’s perspective, ORCA helps them to deal with execution-path control, offloading executable code, and data sharing over a network. Powered by the offloading APIs, de-velopers without any I/O offloading or network programming experience are allowed to write new I/O-intensive code running efficiently on clusters. We implement the ORCA framework on a cluster to quantitatively evaluate performance improvements offered by our approach. We run five real-world applications on both homogeneous and heterogeneous computing environments. Ex-perimental results show ORCA speeds up the performance of all the five tested applications by a factor of up to 90.1 % with an average of 75.5%. Moreover, the results confirm that ORCA reduces network burden imposed by I/O-intensive applications by a factor of anywhere between 35 to 68. Keywords-offloading; I/O intensive; I.