Skip to main content
Redhat Developers  Logo
  • AI

    Get started with AI

    • Red Hat AI
      Accelerate the development and deployment of enterprise AI solutions.
    • AI learning hub
      Explore learning materials and tools, organized by task.
    • AI interactive demos
      Click through scenarios with Red Hat AI, including training LLMs and more.
    • AI/ML learning paths
      Expand your OpenShift AI knowledge using these learning resources.
    • AI quickstarts
      Focused AI use cases designed for fast deployment on Red Hat AI platforms.
    • No-cost AI training
      Foundational Red Hat AI training.

    Featured resources

    • OpenShift AI learning
    • Open source AI for developers
    • AI product application development
    • Open source-powered AI/ML for hybrid cloud
    • AI and Node.js cheat sheet

    Red Hat AI Factory with NVIDIA

    • Red Hat AI Factory with NVIDIA is a co-engineered, enterprise-grade AI solution for building, deploying, and managing AI at scale across hybrid cloud environments.
    • Explore the solution
  • Learn

    Self-guided

    • Documentation
      Find answers, get step-by-step guidance, and learn how to use Red Hat products.
    • Learning paths
      Explore curated walkthroughs for common development tasks.
    • Guided learning
      Receive custom learning paths powered by our AI assistant.
    • See all learning

    Hands-on

    • Developer Sandbox
      Spin up Red Hat's products and technologies without setup or configuration.
    • Interactive labs
      Learn by doing in these hands-on, browser-based experiences.
    • Interactive demos
      Click through product features in these guided tours.

    Browse by topic

    • AI/ML
    • Automation
    • Java
    • Kubernetes
    • Linux
    • See all topics

    Training & certifications

    • Courses and exams
    • Certifications
    • Skills assessments
    • Red Hat Academy
    • Learning subscription
    • Explore training
  • Build

    Get started

    • Red Hat build of Podman Desktop
      A downloadable, local development hub to experiment with our products and builds.
    • Developer Sandbox
      Spin up Red Hat's products and technologies without setup or configuration.

    Download products

    • Access product downloads to start building and testing right away.
    • Red Hat Enterprise Linux
    • Red Hat AI
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform
    • See all products

    Featured

    • Red Hat build of OpenJDK
    • Red Hat JBoss Enterprise Application Platform
    • Red Hat OpenShift Dev Spaces
    • Red Hat Developer Toolset

    References

    • E-books
    • Documentation
    • Cheat sheets
    • Architecture center
  • Community

    Get involved

    • Events
    • Live AI events
    • Red Hat Summit
    • Red Hat Accelerators
    • Community discussions

    Follow along

    • Articles & blogs
    • Developer newsletter
    • Videos
    • Github

    Get help

    • Customer service
    • Customer support
    • Regional contacts
    • Find a partner

    Join the Red Hat Developer program

    • Download Red Hat products and project builds, access support documentation, learning content, and more.
    • Explore the benefits

Python 3.14 free-threaded build is now available in RHEL

September 14, 2026
Lumír Balhar
Related topics:
PythonProgramming languages & frameworksDeveloper tools
Related products:
Red Hat Enterprise Linux

    Developers on Red Hat Enterprise Linux 9.8 and 10.2 can now test full parallel CPU execution in Python using the new free-threaded Python 3.14 build. In addition to the regular Python 3.14 interpreter, we also provide the free-threaded variant in the Red Hat CodeReady Linux Builder repositories.

    Python 3.14 is the first upstream release where the free-threaded build is officially supported rather than experimental.

    Threading Python without the GIL: What is free-threaded Python?

    The standard CPython interpreter uses the Global Interpreter Lock, usually called the GIL. The GIL prevents multiple Python threads from executing Python bytecode at the same time in one process. While the GIL simplifies CPython internal memory management, it prevents CPU-bound Python code from utilizing multiple CPU cores through threads.

    The free-threaded build removes this limitation. It is built with the GIL disabled and allows Python threads to execute in parallel on multiple CPU cores. This can improve performance for programs that are already designed around threading, especially CPU-bound workloads where multiprocessing is too expensive or too complicated.

    This does not mean that every Python program will become faster automatically. I/O-bound applications, single-threaded programs, and applications limited by external services might see little or no benefit. But for workloads where threads do real CPU work, free-threaded Python allows CPU-bound Python threads to execute across multiple cores in a single process.

    How to install it

    The free-threaded Python 3.14 interpreter is available as the python3.14-freethreading package. It installs the python3.14t executable, so it can be installed next to other Python interpreters without replacing the system Python.

    Enable the CodeReady Linux Builder repository:

    sudo subscription-manager repos \
    --enable codeready-builder-for-rhel-$(rpm -E '%{rhel}')-$(uname -m)-rpms

    Then install the interpreter:

    sudo dnf install python3.14-freethreading

    Run it with:

    python3.14t

    You can verify that the interpreter supports free-threading with:

    python3.14t -VV

    The output should mention that this is a free-threading build. You can also check from Python code:

    python3.14t -c "import sys, sysconfig; print(sysconfig.get_config_var('Py_GIL_DISABLED')); print(sys._is_gil_enabled())"

    The first value tells you whether the interpreter was built with free-threading support. The second tells you whether the GIL is currently enabled in this process.

    Running existing code

    If your pure Python code doesn't share state across threads, it will likely run without changes. But if your application implicitly relied on the GIL for thread safety, real race conditions can surface.

    Built-in container types like dict, list, and set use internal locks in the free-threaded build to protect individual operations, similar to the protection the GIL provided. However, sequences of operations are not atomic. For example, checking whether a key exists in a dictionary and then setting it are two separate operations, and another thread can modify the dictionary in between. If your code relies on multiple operations being performed without interleaving, use threading.Lock, queues, or another explicit synchronization mechanism.

    Extension modules need more attention. Some third-party packages, especially packages with C extensions, might not yet support free-threaded Python. When such a module is imported, Python can enable the GIL again for the process. This keeps compatibility, but it also means that the application no longer gets the full benefit of free-threaded execution. If you know your workload is safe, you can override this with PYTHON_GIL=0 or -Xgil=0 to keep the GIL disabled, but this is at your own risk.

    For this reason, the best first step is to test your application and its dependencies with python3.14t, run your test suite, and measure the workload that matters to you.

    When can you benefit?

    Free-threaded Python is most beneficial when your application already uses threads, performs CPU work in Python, and would benefit from using several CPU cores within a single process.

    Good candidates include data processing pipelines, simulation code, CPU-heavy background workers, local parallel processing, and applications where sharing Python objects between workers is easier than using separate processes.

    Applications that mostly wait for the network, database, disk, or external APIs might not benefit much. For those workloads, the regular Python build, asynchronous I/O, or existing worker models can still be the better choice.

    The free-threaded build has a small single-threaded performance overhead, currently around 5%-10% compared to the regular build.

    What this means for developers

    Free-threaded Python does not remove the need to design concurrent code carefully. Instead, it makes correctly threaded code more useful.

    When developing code that should work well on both regular and free-threaded Python, keep these recommendations in mind:

    • Use explicit synchronization for shared mutable state.
    • Test multi-threaded execution under python3.14t.
    • Verify whether your dependencies support free-threading.
    • Measure performance before changing architecture.

    The regular Python interpreter remains the default and the right choice for many workloads. The free-threaded build gives developers a new option where threads, shared memory, and multicore CPU usage are a good fit.

    Install python3.14-freethreading on RHEL 9.8 or 10.2 today, run your test suite against python3.14t, and prepare your applications for the next stage of Python concurrency.

    Related Posts

    • New features in Python 3.14

    • Build trusted Python containers with Project Hummingbird and Calunga

    • Why you should use Fromager to build your Python dependency trees from source

    • The case for building enterprise agentic apps with Java instead of Python

    • Python 3.9 reaches end of life: What it means for RHEL users

    • How to change the meaning of python and python3 on RHEL

    Recent Posts

    • Understanding W8A8 INT8 LLM quantization: Accuracy and performance results

    • Python 3.14 free-threaded build is now available in RHEL

    • Unlock a LUKS root over SSH on Fedora and Red Hat Enterprise Linux

    • Bringing custom knowledge to agents with AutoRAG

    • Red Hat edge platforms: Choosing the right one for your use case

    What’s up next?

    Learning Path Image mode for Red Hat Enterprise Linux share and feature image

    Build a hardened Flask stack and deploy it in image mode for Red Hat Enterprise Linux

    Build a Python Flask application on Red Hat Enterprise Linux 10 using...
    Red Hat Developers logo LinkedIn YouTube Twitter Facebook

    Platforms

    • Red Hat AI
    • Red Hat Enterprise Linux
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform
    • See all products

    Build

    • Developer Sandbox
    • Developer tools
    • Interactive tutorials
    • API catalog

    Quicklinks

    • Learning resources
    • E-books
    • Cheat sheets
    • Blog
    • Events
    • Newsletter

    Communicate

    • About us
    • Contact sales
    • Find a partner
    • Report a website issue
    • Site status dashboard
    • Report a security problem

    RED HAT DEVELOPER

    Build here. Go anywhere.

    We serve the builders. The problem solvers who create careers with code.

    Join us if you’re a developer, software engineer, web designer, front-end designer, UX designer, computer scientist, architect, tester, product manager, project manager or team lead.

    Sign me up

    Red Hat legal and privacy links

    • About Red Hat
    • Jobs
    • Events
    • Locations
    • Contact Red Hat
    • Red Hat Blog
    • Inclusion at Red Hat
    • Cool Stuff Store
    • Red Hat Summit
    © 2026 Red Hat

    Red Hat legal and privacy links

    • Privacy statement
    • Terms of use
    • All policies and guidelines
    • Digital accessibility
    Ask AI