Skip to content
This repository was archived by the owner on Jan 13, 2025. It is now read-only.

Commit 18a32a8

Browse files
authored
Add Missing Features chapter to README (#534)
1 parent 8547059 commit 18a32a8

File tree

2 files changed

+44
-0
lines changed

2 files changed

+44
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -523,3 +523,4 @@ report bugs.
523523

524524
- [How to add a new operation](doc/AddingBlas3Op.md)
525525
- [Autotuner Developer Guide](doc/Autotuner.md)
526+
- [Missing Features](doc/MissingFeatures.md)

doc/MissingFeatures.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
## Missing Features
2+
3+
The following is a list of features missing in portBLAS for supporting entirely the [oneAPI oneMKL BLAS interface](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/blas).
4+
The order does not reflect any kind of priority.
5+
6+
For questions regarding input types or operators support, please refer to the link above.
7+
8+
- Add row-major support to level-1 operators.
9+
- Add row-major support to level-2 operators.
10+
- Add row-major support to level-3 operators.
11+
- Add complex support to level-1 operators that required it: asum, axpy, copy, nrm2, rot, rotg, scal, swap, iamax, iamin.
12+
- Implement [dotc](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/dotc.html#onemkl-blas-dotc) operator.
13+
- Implement [dotu](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/dotu.html#onemkl-blas-dotu) operator.
14+
- Add complex support to level-2 operators that required it: gbmv, gemv, symv, syr, syr2, tbmv, tbsv, tpmv, tpsv, trmv, trsv.
15+
- Implement [gerc](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/gerc.html#onemkl-blas-gerc) level-2 operator.
16+
- Implement [geru](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/geru.html#onemkl-blas-geru) level-2 operator.
17+
- Implement [hbmv](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/hbmv.html#onemkl-blas-hbmv) level-2 operator.
18+
- Implement [hemv](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/hemv.html#onemkl-blas-hemv) level-2 operator.
19+
- Implement [her](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/her.html#onemkl-blas-her) level-2 operator.
20+
- Implement [her2](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/her2.html#onemkl-blas-her2) level-2 operator.
21+
- Implement [hpmv](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/hpmv.html#onemkl-blas-hpmv) level-2 operator.
22+
- Implement [hpr](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/hpr.html#onemkl-blas-hpr) level-2 operator.
23+
- Implement [hpr2](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/hpr2.html#onemkl-blas-hpr2) level-2 operator.
24+
- Add complex support to level-3 operators that required it: trsm.
25+
- Implement [hemm](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/hemm#onemkl-blas-hemm) level-3 operator.
26+
- Implement [herk](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/herk#onemkl-blas-herk) level-3 operator.
27+
- Implement [her2k](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/her2k#onemkl-blas-her2k) level-3 operator.
28+
- Implement [syrk](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/syrk.html#onemkl-blas-syrk) level-3 operator.
29+
- Implement [syr2k](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/syr2k.html#onemkl-blas-syr2k) level-3 operator.
30+
- Implement [trmm](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/trmm.html#onemkl-blas-trmm) level-3 operator.
31+
- Add complex support to extenstion operators that required it: axpy_batch, omatcopy, omatcopy_batch, omatcopy2, omatadd, omatadd_batch.
32+
- Implement [trsm_batch](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/trsm_batch.html#onemkl-blas-trsm-batch) extension operator.
33+
- Implement [gemmt](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/gemmt.html#onemkl-blas-gemmt) extension operator.
34+
- Implement [imatcopy](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/imatcopy#onemkl-blas-imatcopy) extension operator.
35+
- Implement [imatcopy_batch](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/imatcopy_batch#onemkl-blas-imatcopy-batch) extension operator.
36+
- Implement [gemm_bias](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/gemm_bias.html#onemkl-blas-gemm-bias) extension operator.
37+
- Add different input types support to [gemm](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/gemm#onemkl-blas-gemm)/[gemm_batch](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemkl/source/domains/blas/gemm_batch#onemkl-blas-gemm-batch).
38+
- Add half support to level-1 operators that required it: dot, nrm2, rot.
39+
- Add bfloat16 support to level-1 operators that required it: axpy, copy, dot, nrm2, rot, scal.
40+
- Add interface support for scalar value on device for level-1 operators: axpy, rot, scal.
41+
- Add interface support for scalar value on device for level-2 operators: gbmv, gemv, ger, sbmv, spmv, spr, spr2, symv, syr, syr2.
42+
- Add interface support for scalar value on device for level-3 operators: gemm, symm, trmm.
43+
- Add interface support for scalar value on device for extension operators: axpy_batch, omatcopy, omatcopy2, omatadd, omatcopy_batch, omatadd_batch.

0 commit comments

Comments
 (0)