A research study benchmarks Python's free-threaded (no-GIL) build against the standard GIL build in Python 3.14.2 across four workload types: NumPy-based, sequential kernels, threaded numerical, and threaded object workloads. Key findings: parallelizable workloads on independent data see up to 4x speedup with proportional energy savings and better multi-core utilization, but at the cost of higher memory usage. Sequential workloads show 13–43% increased energy consumption with no performance benefit. Workloads with frequent shared-object access suffer from lock contention. Energy consumption scales with execution time regardless of CPU utilization. Memory overhead in the no-GIL build stems from per-object locking, thread-safety mechanisms, and a new memory allocator. The conclusion is that no-GIL Python is not universally beneficial — developers should assess their workload's parallelizability before switching.

3m read timeFrom arxiv.org
Post cover image

Sort: