2012 International Conference on Cloud and Service Computing (2013)
Beijing, China China
Nov. 4, 2013 to Nov. 6, 2013
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/CSC.2013.9
Erlang programming language is developed for programming concurrent, distributed and fault-tolerant systems. The native support for concurrency makes Erlang an efficient language for multi-core and even many-core programming. The support for large number of light-weight processes in distributed computing environment makes Erlang a good choice for cloud computing. Building more cores on a single chip is a trend in processor design. Intel Xeon Phi coprocessor , which is equipped with at least 60 cores, is the first commercial many-core product released by Intel. Xeon Phi coprocessor is encapsulated in a PCIe card and communicates with host operating system through a specialized interface library called SCIF. This paper introduces the architecture of Xeon Phi coprocessor and analyses the internals of SCIF programming interface first. Then this paper proposes a solution that integrates the computing power of multi-core host machine and Xeon Phi many-core coprocessor transparently. The solutions implements a high efficient SCIF-based Erlang distribution carrier as a plugin into Erlang virtual machine, and extends Erlang VM itself to support remote port access in order to support process location policy defined in this solution. In the end, this paper shows a practical use case of the proposed solution in cloud service environment: improve web server capacity without modifying user program. The performance evaluation shows that the capacity of a web server is improved at least 4 times.
Computing Integration, Erlang, Cloud Computing, Intel Xeon Phi, Many-core, Coprocessor
Siyao Zheng, Xiang Long, "Erlang as a Language for Cloud Computing and Its Integration with Many-core Coprocessor", 2012 International Conference on Cloud and Service Computing, vol. 00, no. , pp. 1-8, 2013, doi:10.1109/CSC.2013.9