Skip to content

Commit ffe988c

Browse files
committed
merge from master
2 parents f2694bf + fb5cecb commit ffe988c

File tree

902 files changed

+92025
-38300
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

902 files changed

+92025
-38300
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,3 +14,6 @@ _build
1414
/site.zip
1515

1616
__pycache__
17+
18+
# -------- Visual Studio --------
19+
.vs/*

README.rst

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,16 @@ oneAPI Specifications
77

88
This repo contains the sources for the `oneAPI Specification`_.
99

10+
For the latest build from master branch, see `this
11+
<http://staging.spec.oneapi.com.s3-website-us-west-2.amazonaws.com/exclude/ci/branches/refs/heads/master/versions/latest/index.html>`__.
12+
13+
For more information about oneAPI, see `oneapi.com
14+
<https://oneapi.com>`__. For information about future releases of the
15+
oneAPI specification, see the `roadmap <roadmap.rst>`__. To be
16+
notified about new releases, become a release-only watcher of this
17+
repo. See `contribute <CONTRIBUTING.rst>`__ for information about
18+
contributing.
19+
1020
The document is built with `Sphinx`_ using a theme provided by `Read
1121
the Docs`_.
1222

requirements.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,4 @@ sphinx_substitution_extensions
1313
sphinx_tabs
1414
sphinxcontrib-spelling
1515
graphviz
16+
lxml

roadmap.rst

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ Version Date Notes
1212
0.6.0_ 01/30/2020 Open source Release
1313
0.7.0_ 03/26/2020 50% content
1414
0.8.0_ 05/28/2020 80% content
15+
0.8.5_ 06/26/2020 85% content
1516
0.9.0_ 07/30/2020 Final Gold Preview
1617
1.0.0_ 08/30/2020 Gold Release
1718
======== ========== ===========
@@ -145,6 +146,7 @@ Date Milestone
145146

146147
- oneDNN
147148

149+
- API's 95% complete
148150
- Rework API presentation into multiple sections
149151
- Add introduction, execution, primitive lifecycle, and programming model
150152
sections
@@ -171,6 +173,7 @@ Date Milestone
171173

172174
- oneMKL
173175

176+
- USM support
174177
- Skeleton of spec, breadown by domain
175178
- Sections that apply to all domains
176179
- subset of domains with high-level description and APIs, as determined by open source schedule
@@ -218,11 +221,13 @@ Date Milestone
218221
- Extend page with collective operations
219222

220223
- Level Zero
224+
225+
- Command queue groups, module linking, extensions, and improved profiling support
221226

222227
- oneDAL
223228

224-
- Extend API description to 18 algorithms
225-
- Add first version for sections on programming model, algorithmics
229+
- Extend API description to kNN classification
230+
- Add first version for sections on error handling, namespaces, terminology, math notations
226231
- Extend numeric tables and data structure sections
227232

228233
- oneTBB
@@ -231,14 +236,25 @@ Date Milestone
231236

232237
- oneVPL
233238

234-
- 95% content
235-
239+
- Updates deferred to 0.8.5_
240+
236241
- oneMKL
237242

238243
- All domains complete
244+
- Finalized BLAS, LAPACK domains
239245
- Draft suitable for review so we can distribute to reviewers before
240246
ISC (6/28/2020).
241247

248+
0.8.5
249+
-----
250+
251+
Summary
252+
+++++++
253+
254+
- oneVPL
255+
256+
- Breaking changes introduced.
257+
242258
0.9.0
243259
-----
244260

@@ -277,15 +293,19 @@ Elements
277293

278294
- Finish extending individual primitives' pages with detailed information
279295
about underlying math and with usage examples
296+
- explanation of principles complete
280297

281298
- oneCCL
282299

283300
- Finalize on sections content and details
284301

285302
- Level Zero
303+
304+
- 1.0 release, support for OpenCL interoperability
286305

287306
- oneDAL
288307

308+
- Extend algorithms section to cover Random Forest, K-Means, SVM, PCA algorithms
289309
- Finalize on sections content and details
290310

291311
- oneTBB
@@ -296,6 +316,8 @@ Elements
296316
- oneVPL
297317

298318
- oneMKL
319+
320+
- finalize FFT, sparse BLAS, RNG, and VM domains
299321

300322
1.0.0
301323
-----

scripts/cleanup-mkl.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
from os.path import join
33
import re
44

5-
r = re.compile(r'\W+:name: (return-values|include-files|note|note-1|note-2|note-3|syntax|description|input-parameters|output-parameters|example)')
5+
r = re.compile(r'\W+:name: (known-limitations|return-values|include-files|note|note-1|note-2|note-3|syntax|description|input-parameters|output-parameters|example)')
66

77
for root, dirs, files in walk("."):
88
for file in files:

scripts/oneapi.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,11 +120,16 @@ def sphinx(root, target):
120120
if not args.verbose:
121121
os.environ['LATEXMKOPTS'] = '--silent'
122122
os.environ['LATEXOPTS'] = '-interaction=nonstopmode -halt-on-error'
123+
sphinx_args = ''
124+
if not args.verbose:
125+
sphinx_args += ' -q'
126+
if args.a:
127+
sphinx_args += ' -a'
123128
shell('%s -M %s %s %s %s' % (sphinx_build,
124129
target,
125130
join(root,source_dir),
126131
join(root,build_dir),
127-
'' if args.verbose else '-q'))
132+
sphinx_args))
128133

129134
def get_env(var):
130135
return os.environ[var] if var in os.environ else ''
@@ -389,6 +394,7 @@ def main():
389394
parser.add_argument('--branch')
390395
parser.add_argument('--verbose', action='store_true')
391396
parser.add_argument('--dry-run', action='store_true')
397+
parser.add_argument('-a', action='store_true')
392398
args = parser.parse_args()
393399

394400
commands[args.action](args.root, args.action)

source/_static/custom.css

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,34 @@
11
.wy-side-nav-search, .wy-nav-top {
2-
background: #4308E5;
2+
background: #4308E5;
3+
}
4+
5+
.eqno {
6+
margin-left: 5px;
7+
float: right;
8+
}
9+
.math .headerlink {
10+
display: none;
11+
visibility: hidden;
12+
}
13+
.math:hover .headerlink {
14+
display: inline-block;
15+
visibility: visible;
16+
margin-right: -0.7em;
17+
}
18+
19+
/* override table width restrictions
20+
* https://rackerlabs.github.io/docs-rackspace/tools/rtd-tables.html */
21+
@media screen and (min-width: 767px) {
22+
23+
.wy-table-responsive table td {
24+
/* !important prevents the common CSS stylesheets from overriding
25+
this as on RTD they are loaded after this stylesheet */
26+
white-space: normal !important;
27+
}
28+
29+
.wy-table-responsive {
30+
overflow: visible !important;
31+
}
332
}
433

534
/* override table width restrictions

source/_static/custom.js

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,41 @@ var wapSection = "oneapi";
1313
var s = document.getElementsByTagName('script')[0];
1414
s.parentNode.insertBefore(po, s);
1515
})();
16+
17+
window.MathJax = {
18+
TeX: {
19+
Macros: {
20+
src: '\\operatorname{src}',
21+
srclayer: '\\operatorname{src\\_layer}',
22+
srciter: '\\operatorname{src\\_iter}',
23+
srciterc: '\\operatorname{src\\_iter\\_c}',
24+
weights: '\\operatorname{weights}',
25+
weightslayer: '\\operatorname{weights\\_layer}',
26+
weightsiter: '\\operatorname{weights\\_iter}',
27+
weightspeephole: '\\operatorname{weights\\_peephole}',
28+
weightsprojection: '\\operatorname{weights\\_projection}',
29+
bias: '\\operatorname{bias}',
30+
dst: '\\operatorname{dst}',
31+
dstlayer: '\\operatorname{dst\\_layer}',
32+
dstiter: '\\operatorname{dst\\_iter}',
33+
dstiterc: '\\operatorname{dst\\_iter\\_c}',
34+
diffsrc: '\\operatorname{diff\\_src}',
35+
diffsrclayer: '\\operatorname{diff\\_src\\_layer}',
36+
diffsrciter: '\\operatorname{diff\\_src\\_iter}',
37+
diffsrciterc: '\\operatorname{diff\\_src\\_iter\\_c}',
38+
diffweights: '\\operatorname{diff\\_weights}',
39+
diffweightslayer: '\\operatorname{diff\\_weights\\_layer}',
40+
diffweightsiter: '\\operatorname{diff\\_weights\\_iter}',
41+
diffweightspeephole: '\\operatorname{diff\\_weights\\_peephole}',
42+
diffweightsprojection: '\\operatorname{diff\\_weights\\_projection}',
43+
diffbias: '\\operatorname{diff\\_bias}',
44+
diffdst: '\\operatorname{diff\\_dst}',
45+
diffdstlayer: '\\operatorname{diff\\_dst\\_layer}',
46+
diffdstiter: '\\operatorname{diff\\_dst\\_iter}',
47+
diffdstiterc: '\\operatorname{diff\\_dst\\_iter\\_c}',
48+
diffgamma: '\\operatorname{diff\\_\\gamma}',
49+
diffbeta: '\\operatorname{diff\\_\\beta}',
50+
workspace: '\\operatorname{workspace}'
51+
}
52+
}
53+
}

source/conf.py

Lines changed: 34 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@
8989
#
9090
html_theme_options = {
9191
'includehidden': False
92-
}
92+
}
9393

9494
html_context = {
9595
'display_github': True,
@@ -159,9 +159,39 @@
159159
'\\DeclareUnicodeCharacter{3C3}{$\\sigma$}'
160160
'\\DeclareUnicodeCharacter{FB01}{$fi$}'
161161
'\\DeclareUnicodeCharacter{FB02}{$fl$}'
162+
'\\newcommand{\\src}{\\operatorname{src}}'
163+
'\\newcommand{\\srclayer}{\\operatorname{src\\_layer}}'
164+
'\\newcommand{\\srciter}{\\operatorname{src\\_iter}}'
165+
'\\newcommand{\\srciterc}{\\operatorname{src\\_iter\\_c}}'
166+
'\\newcommand{\\weights}{\\operatorname{weights}}'
167+
'\\newcommand{\\weightslayer}{\\operatorname{weights\\_layer}}'
168+
'\\newcommand{\\weightsiter}{\\operatorname{weights\\_iter}}'
169+
'\\newcommand{\\weightspeephole}{\\operatorname{weights\\_peephole}}'
170+
'\\newcommand{\\weightsprojection}{\\operatorname{weights\\_projection}}'
171+
'\\newcommand{\\bias}{\\operatorname{bias}}'
172+
'\\newcommand{\\dst}{\\operatorname{dst}}'
173+
'\\newcommand{\\dstlayer}{\\operatorname{dst\\_layer}}'
174+
'\\newcommand{\\dstiter}{\\operatorname{dst\\_iter}}'
175+
'\\newcommand{\\dstiterc}{\\operatorname{dst\\_iter\\_c}}'
176+
'\\newcommand{\\diffsrc}{\\operatorname{diff\\_src}}'
177+
'\\newcommand{\\diffsrclayer}{\\operatorname{diff\\_src\\_layer}}'
178+
'\\newcommand{\\diffsrciter}{\\operatorname{diff\\_src\\_iter}}'
179+
'\\newcommand{\\diffsrciterc}{\\operatorname{diff\\_src\\_iter\\_c}}'
180+
'\\newcommand{\\diffweights}{\\operatorname{diff\\_weights}}'
181+
'\\newcommand{\\diffweightslayer}{\\operatorname{diff\\_weights\\_layer}}'
182+
'\\newcommand{\\diffweightsiter}{\\operatorname{diff\\_weights\\_iter}}'
183+
'\\newcommand{\\diffweightspeephole}{\\operatorname{diff\\_weights\\_peephole}}'
184+
'\\newcommand{\\diffweightsprojection}{\\operatorname{diff\\_weights\\_projection}}'
185+
'\\newcommand{\\diffbias}{\\operatorname{diff\\_bias}}'
186+
'\\newcommand{\\diffdst}{\\operatorname{diff\\_dst}}'
187+
'\\newcommand{\\diffdstlayer}{\\operatorname{diff\\_dst\\_layer}}'
188+
'\\newcommand{\\diffdstiter}{\\operatorname{diff\\_dst\\_iter}}'
189+
'\\newcommand{\\diffdstiterc}{\\operatorname{diff\\_dst\\_iter\\_c}}'
190+
'\\newcommand{\\diffgamma}{\\operatorname{diff\\_\\gamma}}'
191+
'\\newcommand{\\diffbeta}{\\operatorname{diff\\_\\beta}}'
192+
'\\newcommand{\\workspace}{\\operatorname{workspace}}'
162193
),
163194

164-
165195
# Latex figure (float) alignment
166196
#
167197
# 'figure_align': 'htbp',
@@ -238,3 +268,5 @@
238268

239269
notfound_default_language = 'versions'
240270

271+
# oneDAL project directory is needed for `dalapi` extension
272+
onedal_project_dir = 'elements/oneDAL'

source/conf/common_conf.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,16 @@
1+
import os
2+
import sys
13
import string
24

5+
def path_relative_to_repo_root(relative_path):
6+
this_dir = os.path.dirname(os.path.realpath(__file__))
7+
root_dir = os.path.abspath(os.path.join(this_dir, '../..'))
8+
return os.path.abspath(os.path.join(root_dir, relative_path))
9+
10+
# oneDAL uses custom API generator based on `breathe`.
11+
# Extend path to let Sphinx find `dalapi` module:
12+
sys.path.insert(0, path_relative_to_repo_root('source/elements/oneDAL'))
13+
314
extensions = [
415
'notfound.extension',
516
'sphinx.ext.autodoc',
@@ -13,8 +24,10 @@
1324
'sphinx.ext.githubpages',
1425
'sphinx.ext.graphviz',
1526
'sphinxcontrib.spelling',
27+
'sphinx-prompt',
1628
'sphinx_substitution_extensions',
1729
'breathe',
30+
'dalapi', # oneDAL API generator
1831
]
1932

2033
env = {
@@ -43,7 +56,7 @@
4356
.. |vpl_version| replace:: $oneapi_version
4457
.. |mkl_full_name| replace:: oneAPI Math Kernel Library
4558
.. |mkl_version| replace:: $oneapi_version
46-
.. _`Level Zero Specification`: https://spec.oneapi.com/versions/$oneapi_version/oneL0/index.html
59+
.. _`Level Zero Specification`: https://spec.oneapi.com/level-zero/latest/index.html
4760
""")
4861

4962
rst_prolog = prolog_template.substitute(env)

0 commit comments

Comments
 (0)