Next Article in Journal
From Ethical Values to Process Quality in Agile Software Engineering: The Quality Value Driver (QVD) Framework
Previous Article in Journal
SimDSL: A Domain-Specific Language for Large-Scale GPU-Resident Simulation
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Investigating Parallel Scaling Bottlenecks Across Rust, Julia, Haskell, and Python: Workload–Runtime Signatures

1
Department of Computer Science, University of Arkansas at Little Rock, Little Rock, AR 72202, USA
2
Department of Computer and Information Science, Indiana University Purdue University Indianapolis, Indianapolis, IN 46202, USA
3
Computer Information Science & Engineering, University of Florida, Gainesville, FL 32611, USA
4
Department of Computer Science, Indiana University Indianapolis, Indianapolis, IN 46202, USA
*
Author to whom correspondence should be addressed.
Software 2026, 5(3), 38; https://doi.org/10.3390/software5030038
Submission received: 27 July 2026 / Revised: 26 August 2026 / Accepted: 28 August 2026 / Published: 30 August 2026

Abstract

Parallel performance depends not only on programming language and runtime design, but also on how the dominant execution bottleneck changes as parallelism increases. We present a controlled cross-language study of Rust, Julia, Haskell, and Python using Merge Sort, Closest Pair of Points, and Numerical Sum in a multicore environment. For each of the three workloads, we evaluate four language-based implementations at five worker counts p{1,2,4,8,16} using two input sizes and 10 untrimmed trials per configuration, yielding 3 × 4 × 5 × 2 × 10 = 1200 benchmark observations. We propose a decomposition-based diagnostic framework built on three measured components: slowest-worker computation (Cp), algorithmic merge/combine work (Bp), and residual parallel overhead (Rp). Their normalized fractions, together with observed speedup, form a Workload–Runtime Scaling Signature (WRSS). Tracking WRSS across worker counts identifies Bottleneck Transition Points (BTPs). We additionally apply a standardized 20% component-reduction sensitivity analysis to express how strongly total parallel-region time depends on each measured component under an explicit ceteris-paribus assumption. Across the 3 × 2 × 4 = 24 workload–size–implementation conditions, each tracked over p{1,2,4,8,16}, 10 (41.67%) exhibit a bottleneck transition: six of eight Merge Sort conditions and four of eight Closest Pair conditions, whereas none of the eight Numerical Sum conditions exhibits a transition. At p=16, Merge Sort reaches only 2.02–3.19× median speedup because merge work dominates several configurations; Numerical Sum reaches 7.61–12.72× while remaining almost entirely computation-dominant. A separate 100-observation Python shared-memory ablation reduces Merge Sort residual overhead substantially, but leaves the merge stage dominant. The results show that useful parallelism depends on how workload structure and runtime mechanisms shape the evolution of the dominant bottleneck as worker count increases.
Keywords: parallel computing; programming languages; scaling diagnosis; workload–runtime scaling signature; bottleneck transition; component sensitivity; runtime overhead; Rust; Julia; Haskell; Python parallel computing; programming languages; scaling diagnosis; workload–runtime scaling signature; bottleneck transition; component sensitivity; runtime overhead; Rust; Julia; Haskell; Python

Share and Cite

MDPI and ACS Style

Khan, M.H.A.; Stapleton, D.; Kulkarni, M.; Manring, I.; Ullah, M.R.; Raje, R.R. Investigating Parallel Scaling Bottlenecks Across Rust, Julia, Haskell, and Python: Workload–Runtime Signatures. Software 2026, 5, 38. https://doi.org/10.3390/software5030038

AMA Style

Khan MHA, Stapleton D, Kulkarni M, Manring I, Ullah MR, Raje RR. Investigating Parallel Scaling Bottlenecks Across Rust, Julia, Haskell, and Python: Workload–Runtime Signatures. Software. 2026; 5(3):38. https://doi.org/10.3390/software5030038

Chicago/Turabian Style

Khan, Muhammad Hassam Aslam, Daniel Stapleton, Medha Kulkarni, Isaac Manring, Md Rifat Ullah, and Rajeev R. Raje. 2026. "Investigating Parallel Scaling Bottlenecks Across Rust, Julia, Haskell, and Python: Workload–Runtime Signatures" Software 5, no. 3: 38. https://doi.org/10.3390/software5030038

APA Style

Khan, M. H. A., Stapleton, D., Kulkarni, M., Manring, I., Ullah, M. R., & Raje, R. R. (2026). Investigating Parallel Scaling Bottlenecks Across Rust, Julia, Haskell, and Python: Workload–Runtime Signatures. Software, 5(3), 38. https://doi.org/10.3390/software5030038

Article Metrics

Back to TopTop