OpenMathLib / OpenMathLib/OpenBLAS
Adding packed gemm APIs
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 7.6k
- Forks
- 1.7k
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 42
Description
Hi Xianyi,
Came across the following article.
https://www.codeproject.com/Articles/1169319/Reducing-Packing-Overhead-in-Matrix-Matrix-Multipl
This talks about introducing new packed APIs of the following form in MKL.
dest = sgemm_alloc (identifier, m, n, k)
sgemm_pack (identifier, trans, m, n, k, alpha, src, ld, dest)
sgemm_compute (transa, transb, m, n, k, A, lda, B, ldb, beta, C, ldc)
sgemm_free (dest)
This basically avoids the overhead of packing when the same matrix is used multiple times.
Can we think about adding similar APIs in OpenBLAS ?
Thanks
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no repository files, tests, or entry points; start by reviewing the proposed sgemm_alloc, sgemm_pack, sgemm_compute, and sgemm_free API shapes alongside the linked article. Define the intended packed-GEMM behavior and acceptance criteria before locating implementation and test areas, since the issue currently asks for design consideration rather than a bounded change.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- api
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100