You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Enable programmatic versioning
* fix version
* Add version macros
* fix typo
* Use codeblock
* multiline codeblock
* format RST
* Limit raw text to 80col length
* Remove top-level version macro
* Revert changes from versioning.rst
* [oneMKL]Add numerical versioning
* Fix formatting
* Update other_architecture.inc.rst
* Use domain-specific macros instead
* Clarify lack of revision number
* Use SPBLAS instead of SPARSE as the domain name
* Add STAT domain macro
* Add rules for incompliance
* Change STAT to STATS as the domain name
* Add link to versioning details
Copy file name to clipboardExpand all lines: source/elements/oneMKL/source/architecture/other_architecture.inc.rst
+34-2Lines changed: 34 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,11 +11,43 @@ This section covers all other features in the design of oneMKL architecture.
11
11
12
12
.. _onemkl_spec_current_version:
13
13
14
-
Current Version of this oneMKL Specification
14
+
Specification Version and Compliance
15
15
+++++++++++++++++++++++++++++++++++++++++++++
16
16
17
-
This is the oneMKL specification which is part of the oneAPI specification version 1.0.0.
17
+
Each oneMKL domain must define a preprocessor macro to represent the version of the specification that the implementation is compliant with.
18
18
19
+
The macros for each domain are listed as follows:
20
+
21
+
|ONEMKL_BLAS_SPEC_VERSION
22
+
|ONEMKL_LAPACK_SPEC_VERSION
23
+
|ONEMKL_SPBLAS_SPEC_VERSION
24
+
|ONEMKL_DFT_SPEC_VERSION
25
+
|ONEMKL_RNG_SPEC_VERSION
26
+
|ONEMKL_STATS_SPEC_VERSION
27
+
|ONEMKL_VM_SPEC_VERSION
28
+
29
+
The specification version can be created by appending all digits of the specification version in the format of <MAJOR><MINOR>. MINOR version always uses two digits. This version can be used to check the compatibility of the implementation with the specification version. Note that the revision is not included here because it reflects changes only for the specification document without affecting the implementation. If the implementation is not compliant with any release of the specification, then the macro must have a numerical value of `000`.
30
+
31
+
Version Example
32
+
33
+
|oneAPI 1.1 rev 1 will be represented as a numerical value of 101
34
+
|oneAPI 1.2 rev 1 will be represented as a numerical value of 102
35
+
|oneAPI 1.2 rev 2 will be represented as a numerical value of 102
36
+
37
+
Macro Example
38
+
39
+
.. code-block:: c
40
+
41
+
// For oneAPI 1.2 rev 1
42
+
#define ONEMKL_BLAS_SPEC_VERSION 102
43
+
44
+
// For oneAPI 1.2 rev 2
45
+
#define ONEMKL_DFT_SPEC_VERSION 102
46
+
47
+
// For oneAPI 1.3 rev 1
48
+
#define ONEMKL_VM_SPEC_VERSION 103
49
+
50
+
Versioning details are defined here: https://github.com/uxlfoundation/oneAPI-spec/blob/main/doc/versioning.rst#provisional-versions
0 commit comments