Computer Science ›› 2017, Vol. 44 ›› Issue (3): 38-41.doi: 10.11896/j.issn.1002-137X.2017.03.010

Previous Articles     Next Articles

Error Checking Tool for DAG-based Task Parallel Programs

LIU Yan-na, CHEN Li and TANG Sheng-lin   

  • Online:2018-11-13 Published:2018-11-13

Abstract: AceMesh is a dataflow-driven’ task parallel programming language,which allows programmers to parallelize traditional C/C++ program by using pragmas marking parallel regions,parallel loops and task regions with data inputs and outputs description.Then the program can be translated to a DAG-based task parallel program,being built depen-dency graphs at runtime and scheduled to multicore platforms efficiently.This paper analysed typical errors which may exhibit in parallelizing AceMesh programs,and introduced AceMeshCheck,a debug tool for them.The paper presented the implementation details of the tool,and discussed how it reduces the overhead of memory trace collection,and how to rebuild the three dimensional,rectangular access regions from linearized memory access sequences.Experimental results show that the tool can identify typical errors hidden in AceMesh programs with relatively low overhead.

Key words: Task parallel language,Dataflow,Error checking,Dynamic program analysis,Mesh application

[1] ETSION Y,CABARCAS F,RICO A,et al.Task Superscalar:An Out-of-Order Task Pipeline[C]∥Proceedings of the Annual International Symposium on Microarchitecture(MICRO-43).2010:89-100.
[2] GAUTIER T,LIMA J V F,MAILLARD N,et al.XKaapi.A Runtime System for Data-Flow Task Programming on Heterogeneous Architectures[C]∥27th IEEE International Parallel & Distributed Processing Symposium (IPDPS).2013:1299-1308
[3] CARPENTER P M,REMIREZ A,AYGUADE E.Starsscheck:A Tool to Find Errors in Task-Based Parallel Programs[M]∥Euro-Par 2010-Parallel Processing.Springer Berlin Heidelberg,2010:2-13.

No related articles found!
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!