A Study of the OpenMP Multithread Application Execution Performance on Multicore Architecures
Dandan Zhang · Computer Engineering and Science · 2009
The performance of multithread application will go down because OpenMP threads may be migrated between the physical cores on a multicore system. It is possible to improve the performance if OpenMP threads are bound on specified cores. This paper introduces several ways to bind OpenMP threads to the physical cores by using the thread affinity interface of the main STREAM compilers or the API of the Linux kernel. Finally,the STREAM Benchmark and NPB are used to test the performance on a blade at the Shanghai Supercomputer Center. The results show that the better performance will be achieved if the OpenMP threads are bound to cores.