Releases: uxlfoundation/oneAPI-spec
oneAPI V1.1 rev 1
Ray Tracing
Ray tracing capabilities have been added to the oneAPI specification providing software developers across the industry the ability to “write once” for high-fidelity ray-traced computations across multiple vendors’ systems and accelerators. Standardizing these interfaces provides well-designed, tried and true APIs and options for a broad set of compute and rendering infrastructure development.
The ray tracing functionality is subdivided into several domains within the oneAPI Specification:
- Geometric ray tracing computations
- Volumetric computation and rendering
- Image denoising
- Scalable rendering and visualization infrastructure
The set of Ray Tracing APIs include the following, which are in active use via the Intel® oneAPI Rendering Toolkit:
- Embree
- Open Volume Kernel Library
- Open Image Denoise
- OSPRay
oneMKL
Introduces additional batched APIs for dense linear algebra. Sparse matrix-dense matrix product has been extended to support both row and column major layout for the dense matrix. The input USM pointers in the vector math APIs are now const qualified. To align with changes in SYCL 2020, all oneMKL USM APIs were updated to take an (optional) std::vector of input events instead of sycl::vector_class. Other changes include minor clarifications and bug fixes.
DPC++
The new extensions listed as part of oneAPI 1.1 include simplified device selection through text-based filtering, a default context for each platform to simplify common coding patterns, interoperability with devices that use Level Zero as a backend, an easier to use kernel-scope local memory allocation mechanism, GPU-specific information queries, FPGA-specific performance tuning controls, and a sub-group mask feature.
DPC++ features that were incorporated into the SYCL 2020 spec were removed from this document.
oneVPL
New AV1 encode features. Enabled support for planar I422, I210, and BGR formats. Added surface pool interface for surface management.
Level Zero
Updates included significantly improved image processing functionality, better interoperability with other APIs and operating systems, new extensions for floating-point atomics and additional subgroup operations, and extensions to tune and optimize the way memory is allocated and kernels are scheduled on specific devices.
What's Changed
- Update log1p.rst by @kurylo in #321
- [oneTBB] Changing description for containers deduction guides by @kboyarinov in #355
- [oneTBB] Rework the parallel_for_each algorithm requirements by @ivankochin in #348
- [oneTBB] fixed wording for ordered set/multiset description by @anton-potapov in #366
- [oneTBB] Fix link ParallelReduceReduction requirement by @anton-potapov in #347
- [oneTBB] Add adaptive mutexes by @pavelkumbrasev in #354
- [oneTBB] Add task_scheduler_handle by @alexey-katranov in #358
- [oneTBB] Fix flow graph inaccuracies by @Iliamish in #367
- [oneTBB] Fix flow graph copyright year by @Iliamish in #369
- [oneTBB] collaborative_call_once algorithm by @isaevil in #362
- [oneTBB] Fix namespaces and headers by @alexandraepan in #353
- [oneTBB] task_group/task_arena extensions by @anton-potapov in #368
- [oneTBB] - fix license date by @anton-potapov in #370
- [oneTBB] - fix task_group_context argument description by @anton-potapov in #371
- [oneTBB] Heterogeneous overloads for concurrent_hash_map by @kboyarinov in #356
- [oneTBB] Function object iso cpp requirements by @anton-potapov in #372
- Update overview.inc.rst further incorporation of oneART into the description by @dmnemshi in #376
- Update overview.inc.rst incorporating oneART into the description by @dmnemshi in #375
- Update index.rst adding oneART to precede Advanced Ray Tracing by @dmnemshi in #374
- Update conf.py replacing Advanced Ray Tracing with oneART by @dmnemshi in #373
- make release doc point to github by @rscohn2 in #377
- [oneTBB] Fix code example in collaborative_call_once by @isaevil in #378
- oneMKL: replace unsupported sycl::vector_class with std:vector in USM API by @mkrainiuk in #381
- [oneTBB] Pass range to the parallel_sort algorithm by forwarding reference by @ivankochin in #380
- [oneMKL][spblas] updated sparse::gemm routines spec, which adds supporting matrix storage layout by @baeseung-intel in #363
- oneART component updates by @dmnemshi in #385
- Update DPC++ specification for 1.1 release by @mkinsner in #384
- spelling fixes by @rscohn2 in #386
- [oneMKL] Add BLAS APIs by @aaronjohnson in #383
- update for latest releases by @rscohn2 in #387
- freeze versions to avoid build error by @rscohn2 in #388
New Contributors
- @kboyarinov made their first contribution in #355
- @anton-potapov made their first contribution in #366
- @pavelkumbrasev made their first contribution in #354
- @isaevil made their first contribution in #362
- @alexandraepan made their first contribution in #353
- @baeseung-intel made their first contribution in #363
- @aaronjohnson made their first contribution in #383
Full Changelog: oneVPL-v.2.5...oneapi-v1.1-rev-1
oneVPL Spec v2.5
New in this release:
- Added mfxMediaAdapterType to capability reporting.
- Added surface pool interface.
- Helper macro definition to simplify filter properties set up process for dispatcher.
- Added mfxExtAV1BitstreamParam, mfxExtAV1ResolutionParam and mfxExtAV1TileParam for AV1e.
- Added MFX_RESOURCE_VA_SURFACE_PTR and MFX_RESOURCE_VA_BUFFER_PTR enumerators.
- Clarified HEVC Main 10 Still Picture Profile configuration.
- External Buffer ID of mfxExtVideoSignalInfo and mfxExtMasteringDisplayColourVolume for video processing.
- New MFX_WRN_ALLOC_TIMEOUT_EXPIRED return status. Indicates that all surfaces are currently in use and timeout set by mfxExtAllocationHints for allocation of new surfaces through functions GetSurfaceForXXX expired.
- Introduced universal temporal layering structure.
- Added MFX_RESOURCE_VA_SURFACE_PTR and MFX_RESOURCE_VA_BUFFER_PTR enumerators.
- Introduced segmentation interface for AV1e, including ext-buffers and enums.
- Introduced planar I422 and I210 FourCC codes.
Bug Fixes:
- Dispatcher: Removed /etc/ld.so.cache from oneVPL search order.
- mfxSurfaceArray: CDECL attribute added to the member-functions.
Deprecated:
- mfxExtVPPDenoise extension buffer.
oneVPL Spec v2.4
- Added ability to retrieve path to the shared library with the implementation.
- Added 3DLUT (Three-Dimensional Look Up Table) filter in VPP.
- Added mfxGUID structure to specify Globally Unique Identifiers (GUIDs).
- Added QueryInterface function to mfxFrameSurfaceInterface.
- Added AdaptiveRef and alias for ExtBrcAdaptiveLTR.
- Added MFX_FOURCC_BGRP FourCC for Planar BGR format.
- Environmental variables to control dispatcher's logger.
oneVPL Spec v2.3.1
Encoding in Hyper mode.
New product names for platforms:
- Code name Rocket Lake,
- Code name Alder Lake S,
- Code name Alder Lake P,
- Code name for Arctic Sound P.
- For spec version 2.3.1 MFX_PLATFORM_XEHP_SDV alias was added
- mfx.h header file is added which includes all header files.
- Added deprecation messages (deprecation macro) to the functions MFXInit and MFXInitEx functions definition.
oneAPI v1.1. Provisional Rev 1
oneAPI-v1.1-provisional-rev-1 fix build errors (#316)
oneVPL Spec v2.3
New in 2.3 release:
- Encoding in Hyper mode.
- New product names for platforms:
- Code name Rocket Lake,
- Code name Alder Lake S,
- Code name Alder Lake P,
- Code name Arctic Sound P.
- mfx.h header file is added which includes all header files.
- Added deprecation messages (deprecation macro) to the MFXInit and MFXInitEx functions definition.
oneVPL Spec v2.2
oneVPL-v.2.2 oneVPL 2.2 API version release (#291)
Advanced Ray Tracing 0.5
Announcement: https://www.linkedin.com/pulse/advanced-ray-tracing-apis-proposed-oneapi-jim-jeffers/
Published at https://spec.oneapi.com/oneart/latest/index.html
-
Advanced ray tracing capabilities have been added to the oneAPI
specification providing software developers across the industry the
ability to “write once” for high-fidelity ray-traced computations
across multiple vendors’ systems and accelerators. Standardizing
these interfaces provides well-designed, tried and true APIs and
options for a broad set of compute and rendering infrastructure
development. -
The advanced ray tracing functionality is subdivided into several
domains within the oneAPI Specification:- Geometric ray tracing computations
- Volumetric computation and rendering
- Image denoising
- Scalable rendering and visualization infrastructure
-
The set of Advanced Ray Tracing APIs include the following, which
are in active use via the Intel® oneAPI Rendering Toolkit:- Embree
- Open Volume Kernel Library
- Open Image Denoise
- OSPRay
V1.0 Rev 3
-
oneCCL
- Minor API corrections
-
oneDAL
- Correct version MACRO definition
-
oneTBB
- Correct version MACRO definition
V1.0 Rev 1
https://spec.oneapi.com/versions/1.0-rev-1/index.html
-
oneMKL
- Continuing modifications to all oneMKL domains
- Add oneMKL Exceptions and Error Handling
-
oneDNN
- Updated the DPC++ interoperability API
- Added section about namespaces
-
oneTBB
- Updated the named requirements
- Adjusted the API according to the latest product changes
- Improved the wording and descriptions for the flow graph API
- Cleared build warnings
-
oneDAL
- Extended Programming model section, added description of the generic methods and descriptors, introduced task notation
- Extended Data Management section, introduced CSV data source, array, extended description of the tables and accessors
- Extended description of Error handling
- Added description of the training methods for PCA algorithm, introduced K-means initialization algorithm
- Extended Common interface section, added description of service data types used in the interfaces of the library
- Modified the library's namespace
-
oneVPL
- A lot of cleaning to remove GEN/CPU bias and implementation details.
- New organization of structures' description.
- New entry point function to expose by any implementation: MFXInitialize which replaces obsolete MFXInit and MFXInitEx.
- Interface to choose and set subdevices (mfxExtDeviceAffinityMask) for execution.
- Header files cleaned up by removing MFX_VERSION checks (ala #if MFX_VERSION > 1.26) from headers.
-
oneCCL
- Updated operation attributes description
- Updated naming in API