Skip to Main Content
OpenMP is able to develop multithreaded programs with lower cost as a promising way to quickly parallelize a great number of serial programs. However, there are many difficulties when developing OpenMP multithreaded programs. Most importantly, the performance of OpenMP programs cannot be guaranteed, which has greatly affected the application of OpenMP. This paper examines several factors that affect the execution performance of OpenMP programs, including loop transformation, scheduling strategy, the number of threads, and nested parallelism. The results show that one of the key reasons for performance degradation is load imbalance, which can be corrected by reasonable use of these key factors to improve the execution performance of OpenMP programs.