Comparative Scalability Analysis of Python Multiprocessing and OpenMP on Windows and WSL2 - Achmad Fauzan; Agung Purwo Wicaksono; Elindra Ambar Pambudi (Politeknik Ganesha Medan, 2026)
The advent of multicore processors has made efficient parallel programming models increasingly important for CPU-bound workloads. Process-based and thread-based parallelism in native Windows and WSL2 has not been comprehensively compared, despite extensive research on Python multiprocessing, OpenMP, and Windows Subsystem for Linux 2 (WSL2). This paper presents a unified multicore scalability assessment of Python multiprocessing and OpenMP, based on a CPU-intensive floating-point benchmark. Experiments were performed on an Intel Core i9-9900 processor with 8 physical cores and 16 logical threads in different process and thread configurations. Performance was evaluated in terms of execution time, speedup, parallel efficiency, CPU utilization, and statistical reliability metrics from ten repeated executions. Results demonstrate OpenMP performance advantage over Python multiprocessing for all tested configurations. OpenMP with 16 execution units provided maximum speedups of 6.482 on Windows and 7.065 on WSL2, compared to 5.624 and 5.790 for Python multiprocessing. The highest CPU utilization was achieved by OpenMP on WSL2 (97.31%). The reliability analysis confirmed experimental consistency, with coefficient-of-variation values below 10% for all the considered platforms. In general, WSL2 also had slightly better scalability and processor utilization than native Windows. The results show that WSL2 is a suitable environment for multicore computing and that thread-based parallelism provides better scalability for CPU-bound workloads. This study provides a comprehensive perspective on multicore scalability across different parallel programming models and execution environments by integrating multiple performance and reliability metrics into a single benchmark framework.