Skip to content

Commit f3c406e

Browse files
committed
Fix typo in Readme: N->M.
1 parent b776d1b commit f3c406e

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

Readme.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,12 @@ However, as we can see in the code snippet above, the CSC format seems to be rea
4343
To compute any given column in $C_{(:,j)}$ of $C$ we are essentially computing a weighted sum of columns in $A$, i.e. $C_{(:,j)} = \sum_k \lambda_k \cdot A_{(:,k)}$ which should be very cache efficient and SSE-able.
4444

4545
## Benchmarking
46-
For matrices $(N\times K)$ and $(K\times M)$ we fix $N=1'000$ and $K=2'000$ and vary N.
46+
For matrices $(N\times K)$ and $(K\times M)$ we fix $N=1'000$ and $K=2'000$ and vary M.
4747
Here's are the benchmark results, comparing against SparseArrays.jl, which ships with Julia but is single-threaded:
4848

4949
![scaling benchmark](/benchmark/scaling.png)
5050

51-
For all N we see a speed up over `_spmul!` from the SparseArrays package of up to ~2x for N in [300, 30_000].
51+
For all M we see a speed up over `_spmul!` from the SparseArrays package of up to ~2x for M in [300, 30_000].
5252
We also compare against `MKLSparse.jl`. However, since MKLSparse only supports `dense x sparse` we first need to allocate spare buffers and transpose the dense matrix (these allocations are not measured in the `no_transpose` variant), and then computing essentially $(B^T A^T)^T$.
5353
The result is much slower, likely due to the fact that the dense matrix is column-major.
5454
We also compare against SparseArrays.jl doing the same, where we also see poor performance.

0 commit comments

Comments
 (0)