摘要
该文提出了一种将调用局部化技术应用于并行环境下面向对象语言的方法 .文中详细讨论了该技术的适用条件以及如何通过该方法减少循环中的远程过程调用开销 .该优化技术首先将循环分离成多个包含有远程调用的循环 ,再将分离后的循环分配给循环中调用对象所在的处理器 ,最后 ,化简迭代空间 ,并且用消息传递来传输数据 .这种优化在对象分布和循环并行化之后进行 ,将函数调用局部化于处理器 .通过这种优化 ,可以进一步挖掘循环中的任务并行性 ,降低计算复杂度 ,减少函数调用开销 ,尤其适合面向对象语言中对循环里小函数的优化 .该技术已经在作者设计的 Java自动并行化编译器 JAPS- II中实现 .在实验中 。
This paper proposes one method for parallelizing OOL to reduce RPC cost. Authors discuss the condition for applying the new techniques and introduce how to apply they to reduce RPC cost. The optimization firstly separates one loop into multiple loops, and then distributes separated loops into different processors where the invoked object in loop is allocated. The iteration space and transports data is reduced by message passing. The optimization localizes method invocation at the processor. Through the optimization the parallelism is exploited further, the computing complexity and function call cost are reduced. The optimization is suitable for small function in OOL. It has been implemented in authors is automatic parallelizing compiler for JAVA, JAPS-II. The experiment demonstrates ultra linear speedup.
出处
《计算机学报》
EI
CSCD
北大核心
2002年第4期409-416,共8页
Chinese Journal of Computers
基金
国家"八六三"高技术研究发展计划项目 (863 -3 0 6-ZT0 2 -0 3 0 1)资助