# Ada 2022 'parallel' implementation beta for FSF GCC/GNAT

**URL:** https://forum.ada-lang.io/t/ada-2022-parallel-implementation-beta-for-fsf-gcc-gnat/4054
**Category:** Releases
**Tags:** ada, gnat
**Created:** [December 16, 2025, 3:52am UTC](https://forum.ada-lang.io/t/ada-2022-parallel-implementation-beta-for-fsf-gcc-gnat/4054 "2025-12-16T03:52:13Z")
**Posts on this page:** 1
**Showing post:** 11

<div class="post-metadata">

### Author: ![sttaft](https://forum.ada-lang.io/user_avatar/forum.ada-lang.io/sttaft/32/12_2.png) [@sttaft](https://forum.ada-lang.io/u/sttaft)
#### Post date: [January 14, 2026, 7:59pm UTC](https://forum.ada-lang.io/t/ada-2022-parallel-implementation-beta-for-fsf-gcc-gnat/4054/11 "2026-01-14T19:59:19Z")

</div>

> [@JeremyGrosser](#):
>
> Maybe this is out of scope for the runtime, but it seems like heterogeneous CPU configurations are commonplace and pinning each worker to a single CPU should be straightforward, if not an automatic default. I think this is something that would be implemented in LWT?

LWT supports one or more scheduler “plug-ins” which worry about mapping of light-weight threads to “server”/”kernel” threads. Presumably the O/S worries about mapping kernel threads to processors. Right now there are two plugins, one is OpenMP., The other is based on work-stealing, which in turn just uses a set of Ada tasks as the equivalent of server/kernel threads. The operations in System.Multiprocessor.Dispatching\_Domains could presumably be used to pin the server threads, but that is not done currently, but could be. The LWT work-stealing plugin is open source, so feel free to fiddle with it a bit to see if you could automatically “pin” the server tasks/threads.

---

_[View the full topic](https://forum.ada-lang.io/t/ada-2022-parallel-implementation-beta-for-fsf-gcc-gnat/4054)._
