Redlib: Nestable Reductions For Collections In Java

2016 IEEE 18th International Conference on High Performance Computing and Communications; IEEE 14th International Conference on Smart City; IEEE 2nd International Conference on Data Science and Systems (HPCC/SmartCity/DSS)(2016)

引用 1|浏览7
暂无评分
摘要
A reduction is a parallel programming mechanism for combining two or more elements into one. Many parallel programming languages, tools and frameworks (e.g., OpenMP, MPI, etc.) directly support simple forms of reductions (e.g., building a total sum out of partial sums). Some of those tools and frameworks allow more complex reductions to be implemented as custom reductions. However, the success of network-based application frameworks like Hadoop have shown that there is a strong need for reductions of aggregate data structures, such as the union of sets or maps. Usually parallel programming frameworks on shared-memory systems do not support these types of complex reductions directly, and a user needs to implement them manually. To address the gap thereof, this paper proposes an object-oriented reduction framework that supports reductions of aggregate types, and proposes the nesting of reduction objects for flexible extensions of reduction operations. Based on the proposed framework, a reduction library (RedLib) has been developed for Java with direct support for many common reduction operations on collections and maps. Furthermore, the paper studies the usage of the framework for common and complex cases and evaluates its performance, based on operations found in standard benchmarks.
更多
查看译文
关键词
object oriented reductions,shared memory reductions,nestable reductions,aggregate reductions,collections,maps
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要