Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions VERSIONING.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,3 +107,26 @@ Rules for the `d` namespace include:
- If the layout of public class X is changed incompatibly, the “d” namespace number should be incremented.
- If there are existing entry points using the current version of class X, the old version of X should
be kept in the previous “d” namespace.

## API and ABI changes by release

| Library Version | Binary Version | Date | Release Notes | API Changes | ABI Changes | Notes |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest clarifying that "Binary Version (Linux)".

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Or "runtime interface version".

|---------|--------|------|---------------|-------------|-------------|-------|
| 2022.3.0 | 12.17 | Oct 2025 | *Release Notes TBD* | [task_arena enqueue and wait_for specific task_group](https://github.com/uxlfoundation/oneTBB/tree/master/rfcs/proposed/task_arena_waiting), [custom assertion handler support](https://github.com/uxlfoundation/oneTBB/tree/master/rfcs/supported/assertion_handler), [preview of dynamic task graph](https://github.com/uxlfoundation/oneTBB/tree/master/rfcs/proposed/task_group_dynamic_dependencies) | set/get_assertion_handler, current_task_ptr | set/get_assertion_handler symbols are used by custom assertion handler support, current_task_ptr is used by preview of task_group dependencies |
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Links to the release notes are being de-synchronized when a new release is added since they are counted from top. Perhaps the link could go to something stable, like github markdown release notes where release number is actually part of the link https://github.com/uxlfoundation/oneTBB/blob/master/RELEASE_NOTES.md#onetbb-20222-release-notes

Also 2022.3.0 now has the release notes.

| 2022.2.0 | 12.16 | Jun 2025 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-1) | No API changes | No ABI changes | - |
| 2022.1.0 | 12.15 | Mar 2025 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-2) | [Added explicit deduction guides for blocked_nd_range](https://github.com/uxlfoundation/oneTBB/tree/master/rfcs/experimental/blocked_nd_range_ctad), [preview of parallel phase](https://github.com/uxlfoundation/oneTBB/tree/master/rfcs/experimental/parallel_phase_for_task_arena) | enter/exit_parallel_phase | enter/exit_parallel_phase is only used by preview of parallel phase. *WARNING: there was temporary, inadvertant change that made the [unsafe_wait](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onetbb/source/task_scheduler/scheduling_controls/task_scheduler_handle_cls) exception local for this release only.* |
| 2022.0.0 | 12.14 | Oct 2024 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-3) | [Preview of flow graph try_put_and_wait](https://github.com/uxlfoundation/oneTBB/pull/1513) | get_thread_reference_vertex, execution_slot | [The layouts of task_group and flow::graph were changed to improve scalability. The binary library is backwards compatible but issues can arise for partial recomplilation cases (see linked discussion)](https://github.com/uxlfoundation/oneTBB/discussions/1371). get_thread_reference_vertex and execution_slot added for scalability improvements. |
| 2021.13.0 | 12.13 | Jun 2024 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-4) | [Better rvalues support for parallel_reduce and parallel_deterministic_reduce functional API](https://github.com/uxlfoundation/oneTBB/pull/1307) | No ABI changes | - |
| 2021.12.0 | 12.12 | Apr 2024 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-6) | No API changes | No ABI changes | - |
| 2021.11.0 | 12.11 | Nov 2023 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-7) | No API changes | No ABI changes | Thread Composability Manager support introduced. It can be enabled by setting “TCM_ENABLE” environmental variable to 1 |
| 2021.10.0 | 12.10 | Jul 2023 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-8) | [parallel algorithms and Flow Graph nodes allowed to accept pointers to the member functions and member objects as the user-provided callables](https://github.com/uxlfoundation/oneTBB/pull/880). [Added missed member functions, such as assignment operators and swap function, to the concurrent_queue and concurrent_bounded_queue containers](https://github.com/uxlfoundation/oneTBB/pull/1033) | No ABI changes | - |
| 2021.9.0 | 12.9 | Apr 2023 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-9) | [Hybrid core type constraints are fully supported and no longer guarded by preview macro](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/v1.2-rev-1/elements/onetbb/source/task_scheduler/task_arena/task_arena_cls#_CPPv4N11constraints9core_typeE) | No ABI changes | Hybrid CPU support is now production features, including use of symbols introduced in 2021.2.0 |
| 2021.8.0 | 12.8 | Feb 2023 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-10) | [Fixed concurrent_bounded_queue return type to match specification](https://github.com/uxlfoundation/oneTBB/issues/807) | No ABI changes | - |
| 2021.7.0 | 12.7 | Oct 2022 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-11) | No API changes | No ABI changes | - |
| 2021.6.0 | 12.6 | Sep 2022 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-12) | [Improved support and use of the latest C++ standards for parallel_sort that allows using this algorithm with user-defined and standard library-defined objects with modern semantics](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/v1.2-rev-1/elements/onetbb/source/algorithms/functions/parallel_sort_func). The following features are now fully functional: [task_arena extensions](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/v1.2-rev-1/elements/onetbb/source/task_scheduler/task_arena/task_arena_cls), [collaborative_call_once](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onetbb/source/algorithms/functions/collaborative_call_once_func), heterogeneous overloads for concurrent_hash_map, and [task_scheduler_handle](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/v1.2-rev-1/elements/onetbb/source/task_scheduler/scheduling_controls/task_scheduler_handle_cls). | No ABI changes | - |
| 2021.5.0 | 12.5 | Dec 2021 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-13) | Preview of task_group interface with a new run_and_wait overload to accept task_handle | No ABI changes | - |
| 2021.4.0 | 12.4 | Oct 2021 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-14) | Preview of collaborative_call_once algorithm | notify_waiters | - |
| 2021.3.0 | 12.3 | Jun 2021 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-15) | Extended the high-level task API to simplify migration from TBB to oneTBB. Added mutex and rw_mutex that are suitable for long critical sections and resistant to high contention. Added ability to customize the concurrent_hash_map mutex type. Added heterogeneous lookup, erase, and insert operations to concurrent_hash_map. | enqueue(d1::task&, d1::task_group_context&, d1::task_arena_base*), is_writer for queuing_rw_mutex, wait_on_address, notify_by_address/address_all/address_one | - |
| 2021.2.0 | 12.2 | Apr 2021 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-16) | Three-way comparison operators for concurrent ordered containers and concurrent_vector. Preview of Hybrid core type constraints. | core_type_count, fill_core_type_indices, constraints_threads_per_core, constraints_default_concurrency | New symbols used by preview of Hybrid CPU support (entered production in 2021.9). |
| 2021.1.1 | 12.1 | Dec 2020 | [Release Notes](https://www.intel.com/content/www/us/en/developer/articles/release-notes/intel-oneapi-threading-building-blocks-release-notes.html#inpage-nav-17) | [Initial modernized oneTBB API](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/v1.0-rev-3/elements/onetbb/source/nested-index#onetbb-section) | Initial oneTBB ABI | - |

Loading