| ||||||
|
Register / Login CFP Paper Template Schedule Presentations Tutorials BoFs Venue Travel & Hotel FAQ Contact Us Home |
Automatic Streamization in GCCAntoniu Pop (antoniu.pop@gmail.com)Multi-cores and multi-processors became ubiquitous during the last few years, and the trend is to increase the number of simple, power-efficient and slower cores per chip. One of the results is that the performance of single-threaded applications did not significantly improve, or even declined, on new processors, which sensibly heightened the interest in compiler automatic parallelization techniques. Our objective is to develop a framework in GCC to transform loops into pipelines of concurrent tasks using streams to communicate and synchronize. This transformation can either rely on user hints (pragmas) or on static analysis of control and data dependences. The hint-based version of our framework is almost complete. The fully automated version requires an integration with the Graphite polyhedral loop optimization framework and will lead to the development of runtime optimizations based on this polyhedral representation. This approach is complementary with the existing parallelization passes. This paper presents the speedups obtained with this technique, the code transformations and their implementation in GCC, as well as the roadmap of the integration with Graphite/PCP (Polyhedral Compilation Package). |
Sponsors![]() ![]() ![]() ![]()
|
||||
|
register | login | call for papers | venue | travel | faq | sponsors | contact | home
Copyright © 2009 Linux Symposium Inc. All rights reserved. |
||||||