Skip to content

Commit d8ce111

Browse files
committed
Add a run on NVidia to oneMKL.md
Fix formatting in `kde-python.md`
1 parent d1a0927 commit d8ce111

File tree

2 files changed

+19
-1
lines changed

2 files changed

+19
-1
lines changed

content/en/docs/kde-python.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ section can be found in `"steps/sycl_python_extension"` folder (see [README](ste
105105
The folder contains comparison between `dpctl`-based implementation of the KDE implementation following the NumPy
106106
implementation [above](#kde_numpy) and the dedicated C++ code:
107107
108-
```
108+
```bash
109109
KDE for n_sample = 1000000, n_est = 17, n_dim = 7, h = 0.05
110110
Result agreed.
111111
kde_dpctl took 0.3404452269896865 seconds

content/en/docs/oneMKL.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,4 +28,22 @@ The `pybind11` castings discussed in the previous section enable us to write a s
2828
2929
An example of a Python extension `"mkl_interface_ext"` that uses `oneMKL` calls to implement a QR decomposition can be found in `"steps/mkl_interface"` folder (see [README](steps/mkl_interface/README.md)).
3030
31+
The folder executes the tests found in `"steps/mkl_interface/tests"` as well as running a larger benchmark which compares Numpy's `linalg.qr` (for reference) to the extension's implementation:
32+
33+
```bash
34+
$ python run.py
35+
Using device NVIDIA GeForce GT 1030
36+
================================================= test session starts ==================================================
37+
collected 8 items
38+
39+
tests/test_qr.py ........ [100%]
40+
41+
================================================== 8 passed in 0.45s ===================================================
42+
QR decomposition for matrix of size = (3000, 3000)
43+
Result agreed.
44+
qr took 0.016026005148887634 seconds
45+
np.linalg.qr took 0.5165981948375702 seconds
46+
47+
```
48+
3149
`oneMKL` can be built for a variety of backends (see [oneMKL interfaces README](https://github.com/oneapi-src/oneMKL?tab=readme-ov-file#oneapi-math-kernel-library-onemkl-interfaces)). The example extension provides instructions for compiling for Intel, CUDA, and AMD, but the [`portBLAS`](https://github.com/codeplaysoftware/portBLAS) and [`portFFT`](https://github.com/codeplaysoftware/portFFT) backends are worth mentioning that. While the routines in `"mkl_interface_ext"` are not supported, these libraries are written in pure SYCL, and are therefore highly portable: they can offload to CPU, Intel, CUDA, and AMD devices. They are also open-source.

0 commit comments

Comments
 (0)