Threads Scheduling and Load Balancing with Loop Iteration in Multicore Processors: a Case Study with OpenMP

Md. Sirajul Islam, Mohammad Abdur Rouff · 2021

In multi-core processor architecture, all the cores run instructions on different cores at the same time. As a result, overall speed for programs that support multithreading is increased. A CPU in multithreaded environment is capable to handle multiple threads concurrently. The threads share the resources among different cores. Optimal thread allocation to cores with proper load balancing is very challenging. This paper presents a way to allocate threads to multiple cores that minimize thread switching overhead. As a result, overall work load is balanced. For parallel computation, OpenMP (Open Multi-Processing)- an Application Programming Interface (API) is used here in this paper, to supports multi-platform shared-memory for allocating threads in multiple cores with proper load balancing.

Read the paper · More papers on PaperTik