IanButterworth / SystemBenchmark.jl

Julia package for benchmarking a system
MIT License
43 stars 3 forks source link

Show some information about BLAS #54

Closed giordano closed 3 years ago

giordano commented 3 years ago

Following up from https://github.com/IanButterworth/SystemBenchmark.jl/issues/8#issuecomment-897649742, this explicitly shows the current BLAS implementation used (only Julia v1.7+) and the number of threads

julia> using SystemBenchmark

julia> res = runbenchmark();
[ Info: CUDA.functional() == false. No usable GPU detected
Compilation tests100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| Time: 0:02:27
[ Info: Printing of results may be truncated. To view the full results use `show(res, allrows=true, allcols=true)`

julia> show(res, allrows=true, allcols=true)
31×4 DataFrame
 Row │ cat          testname         units   res                               
     │ String       String           String  Any                               
─────┼─────────────────────────────────────────────────────────────────────────
   1 │ info         SysBenchVer              0.4.0
   2 │ info         JuliaVer                 1.8.0-DEV.329
   3 │ info         OS                       Linux (x86_64-pc-linux-gnu)
   4 │ info         CPU                      Intel(R) Core(TM) i7-4870HQ CPU …
   5 │ info         WORD_SIZE                64
   6 │ info         LIBM                     libopenlibm
   7 │ info         LLVM                     libLLVM-12.0.1 (ORCJIT, haswell)
   8 │ info         BLAS                     libopenblas64_
   9 │ info         BLAS_threads             8
  10 │ info         GPU                      missing                           
  11 │ cpu          FloatMul         ms      1.45e-6
  12 │ cpu          FusedMulAdd      ms      1.691e-6
  13 │ cpu          FloatSin         ms      5.4745e-6
  14 │ cpu          VecMulBroad      ms      4.89087e-5
  15 │ cpu          CPUMatMul        ms      0.0342725
  16 │ cpu          MatMulBroad      ms      0.00346737
  17 │ cpu          3DMulBroad       ms      0.0016043
  18 │ cpu          peakflops        flops   1.22076e11
  19 │ cpu          FFMPEGH264Write  ms      339.72
  20 │ mem          DeepCopy         ms      0.000178845
  21 │ mem          Bandwidth10kB    MiB/s   97326.4
  22 │ mem          Bandwidth100kB   MiB/s   27302.4
  23 │ mem          Bandwidth1MB     MiB/s   16301.0
  24 │ mem          Bandwidth10MB    MiB/s   10104.8
  25 │ mem          Bandwidth100MB   MiB/s   5589.41
  26 │ diskio       DiskWrite1KB     ms      0.036006
  27 │ diskio       DiskWrite1MB     ms      1.28207
  28 │ diskio       DiskRead1KB      ms      0.00619557
  29 │ diskio       DiskRead1MB      ms      0.15195
  30 │ loading      JuliaLoad        ms      131.602
  31 │ compilation  compilecache     ms      266.378
julia> using MKL

julia> res = runbenchmark();
[ Info: CUDA.functional() == false. No usable GPU detected
Compilation tests100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| Time: 0:02:21
[ Info: Printing of results may be truncated. To view the full results use `show(res, allrows=true, allcols=true)`

julia> show(res, allrows=true, allcols=true)
31×4 DataFrame
 Row │ cat          testname         units   res                               
     │ String       String           String  Any                               
─────┼─────────────────────────────────────────────────────────────────────────
   1 │ info         SysBenchVer              0.4.0
   2 │ info         JuliaVer                 1.8.0-DEV.329
   3 │ info         OS                       Linux (x86_64-pc-linux-gnu)
   4 │ info         CPU                      Intel(R) Core(TM) i7-4870HQ CPU …
   5 │ info         WORD_SIZE                64
   6 │ info         LIBM                     libopenlibm
   7 │ info         LLVM                     libLLVM-12.0.1 (ORCJIT, haswell)
   8 │ info         BLAS                     libmkl_rt
   9 │ info         BLAS_threads             4
  10 │ info         GPU                      missing                           
  11 │ cpu          FloatMul         ms      1.423e-6
  12 │ cpu          FusedMulAdd      ms      1.451e-6
  13 │ cpu          FloatSin         ms      5.464e-6
  14 │ cpu          VecMulBroad      ms      5.44854e-5
  15 │ cpu          CPUMatMul        ms      0.013209
  16 │ cpu          MatMulBroad      ms      0.003469
  17 │ cpu          3DMulBroad       ms      0.0015147
  18 │ cpu          peakflops        flops   1.63172e11
  19 │ cpu          FFMPEGH264Write  ms      321.44
  20 │ mem          DeepCopy         ms      0.000181379
  21 │ mem          Bandwidth10kB    MiB/s   97724.4
  22 │ mem          Bandwidth100kB   MiB/s   27760.4
  23 │ mem          Bandwidth1MB     MiB/s   16246.3
  24 │ mem          Bandwidth10MB    MiB/s   9974.72
  25 │ mem          Bandwidth100MB   MiB/s   5296.56
  26 │ diskio       DiskWrite1KB     ms      0.038069
  27 │ diskio       DiskWrite1MB     ms      1.11194
  28 │ diskio       DiskRead1KB      ms      0.00597471
  29 │ diskio       DiskRead1MB      ms      0.125011
  30 │ loading      JuliaLoad        ms      133.002
  31 │ compilation  compilecache     ms      267.096
IanButterworth commented 3 years ago

Any idea why actions didn't run on this?

Can you also update this for the progress meter: https://github.com/IanButterworth/SystemBenchmark.jl/blob/c2890c7f74d8a65fbaa469209f6a928d9ab8c457/src/SystemBenchmark.jl#L116

giordano commented 3 years ago

Any idea why actions didn't run on this?

No, I wanted to ask you :laughing:

Can you also update this for the progress meter:

Done (18 -> 21, I hope this was right :smile:)

giordano commented 3 years ago

Any idea why actions didn't run on this?

Because this runs only on pushes to this repository: https://github.com/IanButterworth/SystemBenchmark.jl/blob/c2890c7f74d8a65fbaa469209f6a928d9ab8c457/.github/workflows/test.yml#L3

IanButterworth commented 3 years ago

Fixed. Can you rebase pls

IanButterworth commented 3 years ago

I've got no idea why this is failing. This works locally with the same PAT.

auth = GitHub.authenticate(PAT)
comments = GitHub.comments("IanButterworth/SystemBenchmark.jl", 8, :issue, auth=auth)[1]

Perhaps github is blocking their own runner's IPs..