Abstract | ||
---|---|---|
Tools that provide optimization hints for program developers are facing severe obstacles and often unable to provide meaningful guidance on how to parallelize real--life applications. The main reason is due to the high code complexity and its large size when considering commercially valuable code. Such code is often rich with pointers, heavily nested conditional statements, nested while--based loops, function calls, etc. These constructs prevent existing compiler analysis from extracting the full parallelization potential. We propose a new paradigm to overcome this issue by automatically transforming the code into a much simpler skeleton-like form that is more conductive for auto-parallelization. We then apply existing tools of source--level automatic parallelization on the skeletonized code in order to expose possible parallelization patterns. The skeleton code, along with the parallelized version, are then provided to the programmer in the form of an IDE (Integrated Development Environment) recommendation. The proposed skeletonization algorithm replaces pointers by integer indexes and C-struct references by references to multi-dimensional arrays. This is because automatic parallelizers cannot handle pointer expressions. For example, while(p != NULL){ p->val++; p=p->next; } will be skeletonized to the parallelizable for(Ip=0;Ip |
Year | DOI | Venue |
---|---|---|
2014 | 10.1145/2555243.2555275 | IEEE Transactions on Parallel and Distributed Systems |
Keywords | Field | DocType |
high code complexity,automatic parallelizers,skeletonized code,c-struct reference,code skeletonization,valuable code,full parallelization potential,simpler skeleton-like form,skeleton code,parallelization hint,level automatic parallelization,possible parallelization pattern,parallelization,vectorization,skeletonization | Pointer (computer programming),Programming language,Programmer,Expression (mathematics),Computer science,Parallel computing,Cyclomatic complexity,Vectorization (mathematics),Compiler,Theoretical computer science,Skeletonization,Automatic parallelization | Conference |
Volume | Issue | ISSN |
49 | 8 | 0362-1340 |
Citations | PageRank | References |
0 | 0.34 | 9 |
Authors | ||
3 |
Name | Order | Citations | PageRank |
---|---|---|---|
Cfir Aguston | 1 | 0 | 0.34 |
Yosi Ben Asher | 2 | 23 | 5.49 |
Gadi Haber | 3 | 55 | 9.19 |