摘要
大型并行应用软件一般都是成本高昂的,但在实际有效速度和适应硬件环境变化两方面却往往不尽人意。因此,如何设计效率高且不依赖硬件环境的程序,使其能够持续保持价值,就成了人们追求的目标。从HPC中的问题规模、同步等待、消息传递延迟、数据分解与定位和指令级并行等不同角度出发,通过实例与实验分析,阐述了影响并行应用程序效率和通用性的主要因素,并提出了可用于参考的规则或注意事项。
Generally,a cosmic and complex parallel applied software is very costly. But it is not satisfactory in efficiency and in adapting itself to environment change of hardware, so it has become an object most programmer hanker for how to write a program of high efficiency and not depending on hardware so as to keep up its value. Starting from HPC's problem scale, synchronization waiting, message passing latency, data decomposition and localization and instruction-level parallelization, this paper expounded the main factors affecting program efficiency and portability and presented some rules or points for attention, by means of instances and experiment analysis.
出处
《计算机科学》
CSCD
北大核心
2009年第6期290-293,共4页
Computer Science
基金
国家自然科学基金(60075006)
河南省基础与前沿技术研究(082300410300)资助
关键词
数据依赖
同步等待
数据分解
Cache利用率
通用性
Data dependence, Synchronization waiting, Data decomposition, Cache using ratio, Portability