JuliaLinearAlgebra / Octavian.jl

Multi-threaded BLAS-like library that provides pure Julia matrix multiplication
https://julialinearalgebra.github.io/Octavian.jl/stable/
Other
232 stars 18 forks source link

Add benchmark to README. #86

Closed chriselrod closed 3 years ago

chriselrod commented 3 years ago

Unfortunately, my M1 always segfaults whenever I interact with the REPL after running the benchmarks. Perhaps I should try making a 1-liner that runs the benchmarks and saves the benchmark results, so that I can load it from Julia+Rosetta and produce the plots. Maybe condensing it into 1 line would let me save before it crashes.

I made it so that BLASBenchmarksCPU on the M1 benchmarks AppleAccelerate, which of course dominates the others thanks to using the matrix coprocessor.

For now, I'm just adding the 10980XE in this PR. But more PRs are welcome.

Additional possibilities I can run it on: Xeon SIlver with a single AVX512 FMA unit, 1165G7 (laptop with single AVX512 FMA unit), 1950X (Zen1, single 256 bit fma).

chriselrod commented 3 years ago

The image doesn't show up because I hardcoded the path, and this PR will have to be merged before there are actually images there.

I'm not sure if ".svg" images are supported in Markdown on GitHub, so for now it's pointing to ".png.".

codecov[bot] commented 3 years ago

Codecov Report

Merging #86 (1faccdc) into master (ba60608) will decrease coverage by 5.98%. The diff coverage is 100.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master      #86      +/-   ##
==========================================
- Coverage   88.03%   82.05%   -5.99%     
==========================================
  Files          11       11              
  Lines         652      652              
==========================================
- Hits          574      535      -39     
- Misses         78      117      +39     
Impacted Files Coverage Δ
src/complex_matmul.jl 100.00% <100.00%> (ø)
src/memory_buffer.jl 36.84% <0.00%> (-31.58%) :arrow_down:
src/matmul.jl 80.74% <0.00%> (-10.00%) :arrow_down:
src/global_constants.jl 50.00% <0.00%> (-10.00%) :arrow_down:
src/block_sizes.jl 94.91% <0.00%> (-1.70%) :arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update ba60608...1faccdc. Read the comment docs.