SPIDAL Java: high performance data analytics with Java and MPI on large multicore HPC clusters
SPIDAL Java: high performance data analytics with Java and MPI on large multicore HPC clusters
复制标题
SPIDAL Java:在大型多核 HPC 集群上使用 Java 和 MPI 进行高性能数据分析
DOI:
--
复制
发表时间:
2016
期刊:
影响因子:
--
通讯作者:
G. Fox
中科院分区:
文献类型:
--
作者:
S. Ekanayake;Supun Kamburugamuve;G. Fox
Within the last few years, there have been significant contributions to Java-based big data frameworks and libraries such as Apache Hadoop, Spark, and Storm. While these systems are rich in interoperability and features, developing high performance big data analytic applications is challenging. Also, the study of performance characteristics and high performance optimizations is lacking in the literature for these applications. By contrast, these features are well documented in the High Performance Computing (HPC) domain and some of the techniques have potential performance benefits in the big data domain as well. This paper presents the implementation of a high performance big data analytics library - SPIDAL Java - with a comprehensive discussion on five performance challenges, solutions, and speedup results. SPIDAL Java captures a class of global machine learning applications with significant computation and communication that can serve as a yardstick in studying performance bottlenecks with Java big data analytics. The five challenges present here are the cost of intra-node messaging, inefficient cache utilization, performance costs with threads, overhead of garbage collection, and the costs of heap allocated objects. SPIDAL Java presents its solutions to these and demonstrates significant performance gains and scalability when running on up to 3072 cores in one of the latest Intel Haswell-based multicore clusters.