arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1002.0933cs.PLcs.DC
收藏

基于会话的并行算法编程:表达性与性能

Session-Based Programming for Parallel Algorithms: Expressiveness and Performance

Andi Bejleri, Raymond Hu, Nobuko Yoshida

摘要:

本文研究会话编程和类型的基准测试的例子,比较生产力,安全性和性能与其他通信程序设计语言。并行算法被用来检查上述方面,由于它们广泛使用的消息传递的交互,以及它们在算法研究中的日益突出的硬件资源,如多核机器和集群的可用性。我们贡献了新的基准测试结果SJ,Java的类型安全,二进制会话编程的扩展,对MPJ Express,基于MPI标准的Java消息传递系统。总之,我们观察到(1)尽管有丰富的库和功能,MPI仍然是一个低级API,并且可能遭受显式消息传递的常见缺点,如死锁和意外的消息类型,以及(2)高级会话抽象的好处,这对程序结构有显着影响,以提高可读性和可靠性,并且会话类型安全可以极大地促进通信编程的任务,同时保持有竞争力的性能。

英文摘要:

This paper investigates session programming and typing of benchmark examples to compare productivity, safety and performance with other communications programming languages. Parallel algorithms are used to examine the above aspects due to their extensive use of message passing for interaction, and their increasing prominence in algorithmic research with the rising availability of hardware resources such as multicore machines and clusters. We contribute new benchmark results for SJ, an extension of Java for type-safe, binary session programming, against MPJ Express, a Java messaging system based on the MPI standard. In conclusion, we observe that (1) despite rich libraries and functionality, MPI remains a low-level API, and can suffer from commonly perceived disadvantages of explicit message passing such as deadlocks and unexpected message types, and (2) the benefits of high-level session abstraction, which has significant impact on program structure to improve readability and reliability, and session type-safety can greatly facilitate the task of communications programming whilst retaining competitive performance.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑