Title :
Implementing a portable Multi-threaded Graph Library: The MTGL on Qthreads
Author :
Barrett, Brian W. ; Berry, JonatHan W. ; Murphy, Richard C. ; Wheeler, Kyle B.
Author_Institution :
Sandia Nat. Labs., Albuquerque, NM, USA
Abstract :
Developing multi-threaded graph algorithms, even when using the MTGL infrastructure, provides a number of challenges, including discovering appropriate levels of parallelism, preventing memory hot spotting, and eliminating accidental synchronization. In this paper, we have demonstrated that using the combination of Qthreads and MTGL with commodity processors enables the development and testing of algorithms without the expense and complexity of a Cray XMT. While achievable performance is lower for both the Opteron and Niagara platform, performance issues are similar. While we believe it is possible to port Qthreads to the Cray XMT, this work is still on-going. Therefore, porting work still must be done to move algorithm implementations between commodity processors and the XMT. Although it is likely that the Qthreads-version of an algorithm will not be as optimized as a natively implemented version of the algorithm, such a performance impact may be an acceptable trade-off for ease of implementation.
Keywords :
multi-threading; software libraries; software portability; synchronisation; MTGL; Niagara; Opteron; Qthreads; accidental synchronization; commodity processors; memory hot spotting prevention; parallelism; portable multithreaded graph library; Hardware; Informatics; Laboratories; Libraries; Program processors; Programming profession; Scalability; Sockets; Sun; Yarn;
Conference_Titel :
Parallel & Distributed Processing, 2009. IPDPS 2009. IEEE International Symposium on
Conference_Location :
Rome
Print_ISBN :
978-1-4244-3751-1
Electronic_ISBN :
1530-2075
DOI :
10.1109/IPDPS.2009.5161102