Hello,
I have the Lenovo ThinkStation P620 with the AMD Threadripper PRO 3975WX with 32 cores and 64 Threads. I installed Ubuntu 22.04.2, and I noticed that the performances are not so much improved with respect for example to my DELL XPS 15 laptop with the Intel i7-10750H.
So, I decided to use the BaseBenchmarks.jl package to test the performances on both the machines. This is the code
# -p 6 for the case of my DELL laptop
julia --project -p 32
julia> using BaseBenchmarks
julia> BaseBenchmarks.load!("parallel")
1-element BenchmarkTools.BenchmarkGroup:
tags: []
"parallel" => 1-element BenchmarkTools.BenchmarkGroup:
tags: []
"remotecall" => 5-element BenchmarkTools.BenchmarkGroup:
tags: ["io", "remotecall_fetch"]
("identity", 1024) => Benchmark(evals=1, seconds=5.0, samples=10000)
("identity", 4096) => Benchmark(evals=1, seconds=5.0, samples=10000)
("identity", 2) => Benchmark(evals=1, seconds=5.0, samples=10000)
("identity", 64) => Benchmark(evals=1, seconds=5.0, samples=10000)
("identity", 512) => Benchmark(evals=1, seconds=5.0, samples=10000)
julia> results = run(BaseBenchmarks.SUITE["parallel"], verbose=true);
(1/1) benchmarking "remotecall"...
(1/5) benchmarking ("identity", 1024)...
done (took 2.796757715 seconds)
(2/5) benchmarking ("identity", 4096)...
done (took 2.844155886 seconds)
(3/5) benchmarking ("identity", 2)...
done (took 2.847565344 seconds)
(4/5) benchmarking ("identity", 64)...
done (took 2.822584622 seconds)
(5/5) benchmarking ("identity", 512)...
done (took 2.835860633 seconds)
done (took 14.923916606 seconds)
compared to the 17.42338672 seconds
of my XPS laptop.
I tried also some linalg
calculations
####### DELL XPS 15 LAPTOP WITH i7-10750H
julia> BaseBenchmarks.SUITE["linalg"];
julia> run(BaseBenchmarks.SUITE["linalg"]["factorization"], verbose=true);
(1/32) benchmarking ("eigen", "typename(LinearAlgebra.LowerTriangular)", 256)...
done (took 5.577282505 seconds)
(2/32) benchmarking ("qr", "Matrix", 256)...
done (took 5.601520295 seconds)
(3/32) benchmarking ("svd", "typename(LinearAlgebra.UpperTriangular)", 1024)...
done (took 5.707468825 seconds)
(4/32) benchmarking ("eigen", "typename(LinearAlgebra.Diagonal)", 1024)...
done (took 4.506185221 seconds)
(5/32) benchmarking ("svd", "typename(LinearAlgebra.LowerTriangular)", 1024)...
done (took 5.744405861 seconds)
(6/32) benchmarking ("svd", "typename(LinearAlgebra.Diagonal)", 1024)...
done (took 5.601461302 seconds)
(7/32) benchmarking ("eigen", "Matrix", 256)...
done (took 5.666419938 seconds)
(8/32) benchmarking ("eigen", "typename(LinearAlgebra.UpperTriangular)", 256)...
done (took 5.900232165 seconds)
(9/32) benchmarking ("eigen", "typename(LinearAlgebra.SymTridiagonal)", 256)...
done (took 5.589953574 seconds)
(10/32) benchmarking ("eigen", "typename(LinearAlgebra.Diagonal)", 256)...
done (took 0.960068424 seconds)
(11/32) benchmarking ("schur", "Matrix", 256)...
done (took 5.649411057 seconds)
(12/32) benchmarking ("lu", "Matrix", 256)...
done (took 5.589925312 seconds)
(13/32) benchmarking ("svd", "typename(LinearAlgebra.Bidiagonal)", 256)...
done (took 5.661472392 seconds)
(14/32) benchmarking ("lu", "typename(LinearAlgebra.Tridiagonal)", 256)...
done (took 0.935210964 seconds)
(15/32) benchmarking ("cholesky", "Matrix", 256)...
done (took 4.292936646 seconds)
(16/32) benchmarking ("eigen", "typename(LinearAlgebra.Bidiagonal)", 1024)...
done (took 5.65713484 seconds)
(17/32) benchmarking ("eigen", "typename(LinearAlgebra.UpperTriangular)", 1024)...
done (took 5.631416995 seconds)
(18/32) benchmarking ("svd", "typename(LinearAlgebra.Diagonal)", 256)...
done (took 1.417589805 seconds)
(19/32) benchmarking ("eigen", "typename(LinearAlgebra.LowerTriangular)", 1024)...
done (took 5.596913195 seconds)
(20/32) benchmarking ("svd", "Matrix", 256)...
done (took 5.594872972 seconds)
(21/32) benchmarking ("eigen", "typename(LinearAlgebra.SymTridiagonal)", 1024)...
done (took 5.668368997 seconds)
(22/32) benchmarking ("eigen", "Matrix", 1024)...
done (took 6.59772988 seconds)
(23/32) benchmarking ("svd", "typename(LinearAlgebra.LowerTriangular)", 256)...
done (took 5.638113192 seconds)
(24/32) benchmarking ("eigen", "typename(LinearAlgebra.Bidiagonal)", 256)...
done (took 2.647477007 seconds)
(25/32) benchmarking ("lu", "typename(LinearAlgebra.Tridiagonal)", 1024)...
done (took 0.758005603 seconds)
(26/32) benchmarking ("cholesky", "Matrix", 1024)...
done (took 5.594054503 seconds)
(27/32) benchmarking ("qr", "Matrix", 1024)...
done (took 5.661409009 seconds)
(28/32) benchmarking ("svd", "typename(LinearAlgebra.UpperTriangular)", 256)...
done (took 5.636165226 seconds)
(29/32) benchmarking ("svd", "Matrix", 1024)...
done (took 6.000668539 seconds)
(30/32) benchmarking ("schur", "Matrix", 1024)...
done (took 6.257883476 seconds)
(31/32) benchmarking ("lu", "Matrix", 1024)...
done (took 5.633049943 seconds)
(32/32) benchmarking ("svd", "typename(LinearAlgebra.Bidiagonal)", 1024)...
done (took 5.660954732 seconds)
####### Workstation with Threadripper PRO 3975WX
julia> BaseBenchmarks.SUITE["linalg"];
julia> run(BaseBenchmarks.SUITE["linalg"]["factorization"], verbose=true);
(1/32) benchmarking ("eigen", "typename(LinearAlgebra.LowerTriangular)", 256)...
done (took 5.792936375 seconds)
(2/32) benchmarking ("qr", "Matrix", 256)...
done (took 5.82432053 seconds)
(3/32) benchmarking ("svd", "typename(LinearAlgebra.UpperTriangular)", 1024)...
done (took 5.846795333 seconds)
(4/32) benchmarking ("eigen", "typename(LinearAlgebra.Diagonal)", 1024)...
done (took 5.842180115 seconds)
(5/32) benchmarking ("svd", "typename(LinearAlgebra.LowerTriangular)", 1024)...
done (took 6.027253846 seconds)
(6/32) benchmarking ("svd", "typename(LinearAlgebra.Diagonal)", 1024)...
done (took 5.840626707 seconds)
(7/32) benchmarking ("eigen", "Matrix", 256)...
done (took 5.86221959 seconds)
(8/32) benchmarking ("eigen", "typename(LinearAlgebra.UpperTriangular)", 256)...
done (took 5.83575609 seconds)
(9/32) benchmarking ("eigen", "typename(LinearAlgebra.SymTridiagonal)", 256)...
done (took 5.827527666 seconds)
(10/32) benchmarking ("eigen", "typename(LinearAlgebra.Diagonal)", 256)...
done (took 1.49688383 seconds)
(11/32) benchmarking ("schur", "Matrix", 256)...
done (took 5.860205249 seconds)
(12/32) benchmarking ("lu", "Matrix", 256)...
done (took 5.826403242 seconds)
(13/32) benchmarking ("svd", "typename(LinearAlgebra.Bidiagonal)", 256)...
done (took 5.843292346 seconds)
(14/32) benchmarking ("lu", "typename(LinearAlgebra.Tridiagonal)", 256)...
done (took 1.231770398 seconds)
(15/32) benchmarking ("cholesky", "Matrix", 256)...
done (took 5.062861838 seconds)
(16/32) benchmarking ("eigen", "typename(LinearAlgebra.Bidiagonal)", 1024)...
done (took 5.842612846 seconds)
(17/32) benchmarking ("eigen", "typename(LinearAlgebra.UpperTriangular)", 1024)...
done (took 5.883940138 seconds)
(18/32) benchmarking ("svd", "typename(LinearAlgebra.Diagonal)", 256)...
done (took 2.152332864 seconds)
(19/32) benchmarking ("eigen", "typename(LinearAlgebra.LowerTriangular)", 1024)...
done (took 5.876088368 seconds)
(20/32) benchmarking ("svd", "Matrix", 256)...
done (took 5.866537029 seconds)
(21/32) benchmarking ("eigen", "typename(LinearAlgebra.SymTridiagonal)", 1024)...
done (took 5.871889849 seconds)
(22/32) benchmarking ("eigen", "Matrix", 1024)...
done (took 6.359308098 seconds)
(23/32) benchmarking ("svd", "typename(LinearAlgebra.LowerTriangular)", 256)...
done (took 5.837971065 seconds)
(24/32) benchmarking ("eigen", "typename(LinearAlgebra.Bidiagonal)", 256)...
done (took 3.166776022 seconds)
(25/32) benchmarking ("lu", "typename(LinearAlgebra.Tridiagonal)", 1024)...
done (took 1.005836625 seconds)
(26/32) benchmarking ("cholesky", "Matrix", 1024)...
done (took 5.834697383 seconds)
(27/32) benchmarking ("qr", "Matrix", 1024)...
done (took 5.864963557 seconds)
(28/32) benchmarking ("svd", "typename(LinearAlgebra.UpperTriangular)", 256)...
done (took 5.850566432 seconds)
(29/32) benchmarking ("svd", "Matrix", 1024)...
done (took 6.107092893 seconds)
(30/32) benchmarking ("schur", "Matrix", 1024)...
done (took 5.910521713 seconds)
(31/32) benchmarking ("lu", "Matrix", 1024)...
done (took 5.833513394 seconds)
(32/32) benchmarking ("svd", "typename(LinearAlgebra.Bidiagonal)", 1024)...
done (took 5.908529379 seconds)
How is it possible that the performances of a β¬3000 processor are comparable with those of a laptop processor?