Programming Heterogeneous Systems with Array Types

被引:0
作者
Cui, Xiang [1 ,3 ,4 ]
Li, Xiaowen [2 ]
Chen, Yifeng [1 ,3 ]
机构
[1] Peking Univ, Sch EECS, HCST Key Lab, Beijing, Peoples R China
[2] Air Def Forces Acad, Zhengzhou, Peoples R China
[3] State Key Lab Math Engn & Adv Comp, Wuxi, Peoples R China
[4] Henan Univ, Coll Comp & Informat Engn, Kaifeng, Peoples R China
来源
2015 15TH IEEE/ACM INTERNATIONAL SYMPOSIUM ON CLUSTER, CLOUD AND GRID COMPUTING | 2015年
关键词
heterogeneous programming; array type; programming interface;
D O I
10.1109/CCGrid.2015.113
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
This paper describes the use of array notation called Parray in refinement of parallel programs concerning array type that separates the physical data layout and logical structure of multi-dimensional data, and the control flow diversion of heterogeneous processor units. A case study on matrix multiplication demonstrates refinement of Parray programs: the code evolves from a simple single CPU-thread code to a multi-thread code on CPU/MIC and then a GPU code by modifying the array types in only a few lines of code. A GPU-based SGEMM is implemented in Parray and achieves almost the same Gflops of CUBLAS 4.0 when testing on a single node of Tian-1A system. Because the code operates directly on the logical structure of array, the same SGEMM code can work on different physical array data layouts.
引用
收藏
页码:1067 / 1074
页数:8
相关论文
共 8 条
  • [1] Chen Y, 2012, P 17 ACM SIGPLAN S P
  • [2] Chen Y, 2010, P 24 INT C SUP
  • [3] Chen Yifeng, 2009, PRELIMINARY RES SOFT
  • [4] Chen Yifeng, 2010, PARRAY UNIFIED PROGR
  • [5] Cui Xiang, 2010, P 16 INT C PAR DISTR
  • [6] Cui Xiang, 2009, P 15 INT C PAR DISTR
  • [7] NVIDIA Corp, 2010, CUDA COMP UN CEV ARC
  • [8] Volkov V., 2008, SC08