Automatic Parallelization of C Code Using OpenMP

被引:0
作者
Singal, Gaurav [1 ]
Gopalani, Dinesh [2 ]
Kushwaha, Riti [2 ]
Badal, Tapas [1 ]
机构
[1] Bennett Univ, CSE Dept, Greater Noida 201310, India
[2] MNIT, Dept CSE, Jaipur 302017, Rajasthan, India
来源
EMERGING TECHNOLOGIES IN COMPUTER ENGINEERING: MICROSERVICES IN BIG DATA ANALYTICS | 2019年 / 985卷
关键词
OpenMP; Automatic parallelization; Data dependency; C programming; Lex and Yacc; Language; DEPENDENCE ANALYSIS;
D O I
10.1007/978-981-13-8300-7_25
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Automatic parallelization is necessary for all system. Every person wants the program to execute as soon as possible. Now Days, programmer want to get run faster the sequential program. Automatic parallelization is the greatest challenge in now days. Parallelization implies converting the sequential code to parallel code to getting better utilization of multi-core processor. In parallelization, multi-core use the memory in sharing mode or massage passing. Now day's programmers don't want to take extra overheads of parallelization because they want it from the compiler that's called automatic parallelization. Its main reason is to free the programmers from manual parallelization process. The conversion of a program into parallelize form is very complex work due to program analysis and an unknown value of the variable during compile time. The main reason of conversion is execution time of program due to loops, so the most challenging task is to parallelize the loops and run it on multi-core by breaking the loop iterations. In parallelization process, the compiler must have to check the dependent between loop statements that they are independent of each other. If they are dependent or effect the other statement by running the statement in parallel, so it does not convert it. After checking the dependency, test converts it into parallelization by using OpenMP API. We add some line of OpenMP for enabling parallelization in the loop.
引用
收藏
页码:298 / 309
页数:12
相关论文
共 12 条
[1]  
[Anonymous], 2008, USING OPENMP PORTABL
[2]  
Banerjee Utpal., 1994, LOOP PARALLELIZATION
[3]  
BURKE M, 1986, SIGPLAN NOTICES, V21, P162, DOI 10.1145/13310.13328
[4]   On the automatic parallelization of the Perfect Benchmarks® [J].
Eigenmann, R ;
Hoeflinger, J ;
Padua, D .
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 1998, 9 (01) :5-23
[5]  
Kyriakopoulos K, 2005, PACT 2005: 14th International Conference on Parallel Architectures and Compilation Techniques, P143
[6]  
Levine J.R., 1990, Lex and Yacc
[7]  
Li Z., 1990, IEEE Transactions on Parallel and Distributed Systems, V1, P26, DOI 10.1109/71.80122
[8]   An experimental evaluation of data dependence analysis techniques [J].
Psarris, K ;
Kyriakopoulos, K .
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2004, 15 (03) :196-213
[9]   The Banerjee-Wolfe and GCD tests on exact data dependence information [J].
Psarris, K .
JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 1996, 32 (02) :119-138
[10]   A PRACTICAL ALGORITHM FOR EXACT ARRAY DEPENDENCE ANALYSIS [J].
PUGH, W .
COMMUNICATIONS OF THE ACM, 1992, 35 (08) :102-114