Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Friday, 23 September 2016 at 13:28:26 UTC, Ilya Yaroshenko wrote: Could someone with big reddit rating please post the link there? (maybe Andrei?) Don't forget hackernews!
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Monday, 26 September 2016 at 13:41:42 UTC, Ilya Yaroshenko wrote: https://www.reddit.com/r/programming/comments/54kg6v/numeric_age_for_d_mir_glas_is_faster_than/ Thank you! Do you think the link should be announced in the news group? --Ilya We usually post them in the threads where their content was announced. Doesn't appear to hurt anything. Oh, just saw the twitter post. Great! And Facebook, too. https://www.facebook.com/dlang.org/posts/1405893729424304?notif_t=like_id=1474895263820473
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Monday, 26 September 2016 at 13:30:31 UTC, Ilya Yaroshenko wrote: On Monday, 26 September 2016 at 13:01:27 UTC, Mike Parker wrote: On Sunday, 25 September 2016 at 13:10:53 UTC, Mike Parker wrote: On Sunday, 25 September 2016 at 11:54:46 UTC, Ilya Yaroshenko wrote: Mike, please use for Monday the link to blog post instead of the forum post. Thank you Absolutely. https://www.reddit.com/r/programming/comments/54kg6v/numeric_age_for_d_mir_glas_is_faster_than/ Thank you! Do you think the link should be announced in the news group? --Ilya Oh, just saw the twitter post. Great!
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Monday, 26 September 2016 at 13:01:27 UTC, Mike Parker wrote: On Sunday, 25 September 2016 at 13:10:53 UTC, Mike Parker wrote: On Sunday, 25 September 2016 at 11:54:46 UTC, Ilya Yaroshenko wrote: Mike, please use for Monday the link to blog post instead of the forum post. Thank you Absolutely. https://www.reddit.com/r/programming/comments/54kg6v/numeric_age_for_d_mir_glas_is_faster_than/ Thank you! Do you think the link should be announced in the news group? --Ilya
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Sunday, 25 September 2016 at 13:10:53 UTC, Mike Parker wrote: On Sunday, 25 September 2016 at 11:54:46 UTC, Ilya Yaroshenko wrote: Mike, please use for Monday the link to blog post instead of the forum post. Thank you Absolutely. https://www.reddit.com/r/programming/comments/54kg6v/numeric_age_for_d_mir_glas_is_faster_than/
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Monday, 26 September 2016 at 12:05:46 UTC, Martin Tschierschke wrote: On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: [...] Sounds great! During my time studying mathematics - in the last century, one Dr. of the mathematical department has developed a C++ library as glue to some fast C libs using the possibility of operator overloading, to make the formulation of matrix algorithms quite beautiful. So would it be possible to get: // Performs: c := alpha a x b + beta c // glas is a pointer to a GlasContext glas.gemm(alpha, a, b, beta, c); transformed to something like: Matrix A,B; Real alpha,beta; Vektor c; c = alpha * A * B + beta * c; Maybe not for performance but for readability purpose? There was a recent thread about operator overloading but I didn't understood the problem. (sorry, still a D newbie). Regards mt. Yes, this is possible. But, first we need a more low level interface. It will help to extend the Mir library and to write bindings for other languages (Julia, Python, R).
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Mir is LLVM-accelerated Generic Numerical Library for Science and Machine Learning. Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Mir v0.18.0 release notes: https://github.com/libmir/mir/releases/tag/v0.18.0 The release includes Mir's D Foundation GSoC project. Do not forget to star the project: https://github.com/libmir/mir Best regards, Ilya Sounds great! During my time studying mathematics - in the last century, one Dr. of the mathematical department has developed a C++ library as glue to some fast C libs using the possibility of operator overloading, to make the formulation of matrix algorithms quite beautiful. So would it be possible to get: // Performs: c := alpha a x b + beta c // glas is a pointer to a GlasContext glas.gemm(alpha, a, b, beta, c); transformed to something like: Matrix A,B; Real alpha,beta; Vektor c; c = alpha * A * B + beta * c; Maybe not for performance but for readability purpose? There was a recent thread about operator overloading but I didn't understood the problem. (sorry, still a D newbie). Regards mt.
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Sunday, 25 September 2016 at 11:54:46 UTC, Ilya Yaroshenko wrote: Mike, please use for Monday the link to blog post instead of the forum post. Thank you Absolutely.
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Sunday, 25 September 2016 at 12:11:53 UTC, Lodovico Giaretta wrote: On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Mir is LLVM-accelerated Generic Numerical Library for Science and Machine Learning. Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Mir v0.18.0 release notes: https://github.com/libmir/mir/releases/tag/v0.18.0 The release includes Mir's D Foundation GSoC project. Do not forget to star the project: https://github.com/libmir/mir Best regards, Ilya Typo in the title: `than` must be used for comparisons; `then` is for temporal/causal consequence. Thanks!
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Sunday, 25 September 2016 at 12:11:53 UTC, Lodovico Giaretta wrote: On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Mir is LLVM-accelerated Generic Numerical Library for Science and Machine Learning. Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Mir v0.18.0 release notes: https://github.com/libmir/mir/releases/tag/v0.18.0 The release includes Mir's D Foundation GSoC project. Do not forget to star the project: https://github.com/libmir/mir Best regards, Ilya Typo in the title: `than` must be used for comparisons; `then` is for temporal/causal consequence. Same error twice in the conclusion.
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Mir is LLVM-accelerated Generic Numerical Library for Science and Machine Learning. Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Mir v0.18.0 release notes: https://github.com/libmir/mir/releases/tag/v0.18.0 The release includes Mir's D Foundation GSoC project. Do not forget to star the project: https://github.com/libmir/mir Best regards, Ilya Typo in the title: `than` must be used for comparisons; `then` is for temporal/causal consequence.
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Saturday, 24 September 2016 at 13:13:47 UTC, Mike Parker wrote: On Saturday, 24 September 2016 at 12:59:33 UTC, Andrei Alexandrescu wrote: On 9/23/16 9:28 AM, Ilya Yaroshenko wrote: Could someone with big reddit rating please post the link there? (maybe Andrei?) I will; better yet let Mike do it (cc'd). Don't forget: 9 AM New York Time is the optimum. -- Andrei Roger that. Mike, please use for Monday the link to blog post instead of the forum post. Thank you
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Saturday, 24 September 2016 at 20:53:54 UTC, Andrei Alexandrescu wrote: On 09/24/2016 04:37 PM, Martin Nowak wrote: [...] Yes, this is important. Added Also, I'm not sure whether the title of this thread is intended to be the title of the blog. In that case, "Numerical age" -> "Numeric age" (which btw sounds pretty cool). Changed
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Saturday, 24 September 2016 at 20:53:54 UTC, Andrei Alexandrescu wrote: On 09/24/2016 04:37 PM, Martin Nowak wrote: [...] Yes, this is important. Added Also, I'm not sure whether the title of this thread is intended to be the title of the blog. In that case, "Numerical age" -> "Numeric age" (which btw sounds pretty cool). Changed
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On 09/24/2016 04:37 PM, Martin Nowak wrote: On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Mir is LLVM-accelerated Generic Numerical Library for Science and Machine Learning. Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Still time for a few edits of that post? Please emphasize the equally impressive comparison of the code necessary for the matrix multiplication. glas.gemm(alpha, a, b, beta, c); vs. cblas.gemm( cblas.Order.RowMajor, cblas.Transpose.NoTrans, cblas.Transpose.NoTrans, cast(cblas.blasint) m, cast(cblas.blasint) n, cast(cblas.blasint) k, & alpha, a.ptr, cast(cblas.blasint) a.stride, b.ptr, cast(cblas.blasint) b.stride, & beta, d.ptr, cast(cblas.blasint) d.stride); Yes, this is important. Also, I'm not sure whether the title of this thread is intended to be the title of the blog. In that case, "Numerical age" -> "Numeric age" (which btw sounds pretty cool). Andrei
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Mir is LLVM-accelerated Generic Numerical Library for Science and Machine Learning. Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Still time for a few edits of that post? Please emphasize the equally impressive comparison of the code necessary for the matrix multiplication. glas.gemm(alpha, a, b, beta, c); vs. cblas.gemm( cblas.Order.RowMajor, cblas.Transpose.NoTrans, cblas.Transpose.NoTrans, cast(cblas.blasint) m, cast(cblas.blasint) n, cast(cblas.blasint) k, & alpha, a.ptr, cast(cblas.blasint) a.stride, b.ptr, cast(cblas.blasint) b.stride, & beta, d.ptr, cast(cblas.blasint) d.stride);
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Saturday, 24 September 2016 at 16:55:04 UTC, Martin Nowak wrote: On Saturday, 24 September 2016 at 13:18:45 UTC, Ilya Yaroshenko wrote: Thank you. Lets wait until Martin submit benchmark results too https://forum.dlang.org/post/mkmjxwilpvsggobak...@forum.dlang.org Working on it in an hour, with such a strong headline we should avoid mistakes. Number somewhat confirmed w/ a Skylake Core i7-6700 and DDR4 RAM, slight advantage for Intel. For Intel MKL 2017.0.098 ``` m=n=k,GLAS(thread_count=1),OpenBLAS(thread_count=?) 10,20,20 20,32,40 30,38.5714,60 40,64,80 50,59.5238,73.5294 60,69.6774,65.4545 70,63.5185,72.2105 80,84.6281,82.5806 90,74.0102,81 100,85.8369,81.6327 200,98.8264,98.401 300,102.079,95.7277 500,108.15,110.727 600,110.334,112.301 700,109.637,112.022 800,110.13,111.309 900,110.491,110.983 1000,109.634,111.374 1200,108.937,111.677 1400,109.837,111.249 1600,108.661,112.19 1800,109.626,112.124 2000,109.748,111.693 ``` And OpenBLAS 0.2.18 (openblas-0.2.18-5.fc24.x86_64) ``` m=n=k,GLAS(thread_count=1),OpenBLAS(thread_count=?) 10,20,10 20,32,20 30,36,24.5455 40,64,37.6471 50,58.1395,40.3226 60,69.6774,46.9565 70,63.5185,45.1316 80,84.6281,58.5143 90,74.7692,53.6029 100,85.8369,62.3053 200,99.3789,80.8489 300,103.211,89.478 500,108.169,98.5416 600,110.367,101.678 700,109.49,101.634 800,110.014,100.123 900,110.266,101.126 1000,109.964,100.336 1200,109.113,101.378 1400,110.003,101.907 1600,108.596,101.66 1800,109.734,102.706 2000,109.742,103.167 ```
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Saturday, 24 September 2016 at 17:42:10 UTC, Ilya Yaroshenko wrote: On Saturday, 24 September 2016 at 16:55:04 UTC, Martin Nowak wrote: On Saturday, 24 September 2016 at 13:18:45 UTC, Ilya Yaroshenko wrote: Thank you. Lets wait until Martin submit benchmark results too https://forum.dlang.org/post/mkmjxwilpvsggobak...@forum.dlang.org Working on it in an hour, with such a strong headline we should avoid mistakes. Cool! Eigen data was added. Netlib cblas (not blas) required to link Eigen library (Eigen -> Fortran BLAS -> Netlib CBLAS -> D code). For Eigen: mkdir build_dir cd build_dir cmake -DCMAKE_BUILD_TYPE=Release -DEIGEN_TEST_AVX=ON -DEIGEN_TEST_FMA=ON build_dir make blas Edit: cmake -DCMAKE_BUILD_TYPE=Release -DEIGEN_TEST_AVX=ON -DEIGEN_TEST_FMA=ON ..
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Saturday, 24 September 2016 at 17:42:10 UTC, Ilya Yaroshenko wrote: On Saturday, 24 September 2016 at 16:55:04 UTC, Martin Nowak wrote: On Saturday, 24 September 2016 at 13:18:45 UTC, Ilya Yaroshenko wrote: Thank you. Lets wait until Martin submit benchmark results too https://forum.dlang.org/post/mkmjxwilpvsggobak...@forum.dlang.org Working on it in an hour, with such a strong headline we should avoid mistakes. Cool! Eigen data was added. Netlib cblas (not blas) required to link Eigen library (Eigen -> Fortran BLAS -> Netlib CBLAS -> D code). For Eigen: mkdir build_dir cd build_dir cmake -DCMAKE_BUILD_TYPE=Release -DEIGEN_TEST_AVX=ON -DEIGEN_TEST_FMA=ON build_dir make blas Eigen 3.3 is required
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Saturday, 24 September 2016 at 16:55:04 UTC, Martin Nowak wrote: On Saturday, 24 September 2016 at 13:18:45 UTC, Ilya Yaroshenko wrote: Thank you. Lets wait until Martin submit benchmark results too https://forum.dlang.org/post/mkmjxwilpvsggobak...@forum.dlang.org Working on it in an hour, with such a strong headline we should avoid mistakes. Cool! Eigen data was added. Netlib cblas (not blas) required to link Eigen library (Eigen -> Fortran BLAS -> Netlib CBLAS -> D code). For Eigen: mkdir build_dir cd build_dir cmake -DCMAKE_BUILD_TYPE=Release -DEIGEN_TEST_AVX=ON -DEIGEN_TEST_FMA=ON build_dir make blas
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Saturday, 24 September 2016 at 13:18:45 UTC, Ilya Yaroshenko wrote: Thank you. Lets wait until Martin submit benchmark results too https://forum.dlang.org/post/mkmjxwilpvsggobak...@forum.dlang.org Working on it in an hour, with such a strong headline we should avoid mistakes.
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Saturday, 24 September 2016 at 13:13:47 UTC, Mike Parker wrote: On Saturday, 24 September 2016 at 12:59:33 UTC, Andrei Alexandrescu wrote: On 9/23/16 9:28 AM, Ilya Yaroshenko wrote: Could someone with big reddit rating please post the link there? (maybe Andrei?) I will; better yet let Mike do it (cc'd). Don't forget: 9 AM New York Time is the optimum. -- Andrei Roger that. Thank you. Lets wait until Martin submit benchmark results too https://forum.dlang.org/post/mkmjxwilpvsggobak...@forum.dlang.org
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Saturday, 24 September 2016 at 12:59:33 UTC, Andrei Alexandrescu wrote: On 9/23/16 9:28 AM, Ilya Yaroshenko wrote: Could someone with big reddit rating please post the link there? (maybe Andrei?) I will; better yet let Mike do it (cc'd). Don't forget: 9 AM New York Time is the optimum. -- Andrei Roger that.
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On 9/23/16 9:28 AM, Ilya Yaroshenko wrote: Could someone with big reddit rating please post the link there? (maybe Andrei?) I will; better yet let Mike do it (cc'd). Don't forget: 9 AM New York Time is the optimum. -- Andrei
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On 9/23/2016 7:30 AM, Joakim wrote: People don't just want speed and portability, they want ease of use. Show them that D will be easier. Fast code, fast!
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On 09/23/2016 02:14 PM, Ali Çehreli wrote: On 09/23/2016 06:28 AM, Ilya Yaroshenko wrote: Could someone with big reddit rating please post the link there? (maybe Andrei?) Shall we wait until Monday morning so that you have time to update the blog and it has more impact on Reddit? :) Yah awes
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Friday, 23 September 2016 at 18:14:37 UTC, Ali Çehreli wrote: On 09/23/2016 06:28 AM, Ilya Yaroshenko wrote: Could someone with big reddit rating please post the link there? (maybe Andrei?) Shall we wait until Monday morning so that you have time to update the blog and it has more impact on Reddit? :) Ali Yes, good idea. Will add Apple and Intel implementations.
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On 09/23/2016 06:28 AM, Ilya Yaroshenko wrote: Could someone with big reddit rating please post the link there? (maybe Andrei?) Shall we wait until Monday morning so that you have time to update the blog and it has more impact on Reddit? :) Ali
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Friday, 23 September 2016 at 16:48:33 UTC, kinke wrote: On Friday, 23 September 2016 at 15:01:28 UTC, jmh530 wrote: On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Great work. +1. Please also provide the used compilers for reproduceability and credibility, e.g., its's not clear how OpenBLAS was compiled. clang and recent ldc beta. C compiler does not matter because OpenBLAS Haswell kernels was written in assembler. Mir support only LDC compiler.
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Friday, 23 September 2016 at 15:01:28 UTC, jmh530 wrote: On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Great work. +1. Please also provide the used compilers for reproduceability and credibility, e.g., its's not clear how OpenBLAS was compiled.
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Great work.
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Friday, 23 September 2016 at 14:55:02 UTC, John Colvin wrote: On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Mir is LLVM-accelerated Generic Numerical Library for Science and Machine Learning. Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Mir v0.18.0 release notes: https://github.com/libmir/mir/releases/tag/v0.18.0 The release includes Mir's D Foundation GSoC project. Do not forget to star the project: https://github.com/libmir/mir Best regards, Ilya Looks excellent. I tested compared to Apple's Accelerate BLAS and got similar results. Environment variables to set single thread for cblas: for openBLAS: OPENBLAS_NUM_THREADS=1 for Accelerate (Apple): VECLIB_MAXIMUM_THREADS=1 for intel MKL: MKL_NUM_THREADS=1 Thank you, John. Will add them to the blog
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Mir is LLVM-accelerated Generic Numerical Library for Science and Machine Learning. Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Mir v0.18.0 release notes: https://github.com/libmir/mir/releases/tag/v0.18.0 The release includes Mir's D Foundation GSoC project. Do not forget to star the project: https://github.com/libmir/mir Best regards, Ilya Looks excellent. I tested compared to Apple's Accelerate BLAS and got similar results. Environment variables to set single thread for cblas: for openBLAS: OPENBLAS_NUM_THREADS=1 for Accelerate (Apple): VECLIB_MAXIMUM_THREADS=1 for intel MKL: MKL_NUM_THREADS=1
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Mir is LLVM-accelerated Generic Numerical Library for Science and Machine Learning. Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Mir v0.18.0 release notes: https://github.com/libmir/mir/releases/tag/v0.18.0 The release includes Mir's D Foundation GSoC project. Nice work. The blog post is a bit short though: it might benefit from some usage samples showing how the equivalent D code is much nicer to write and read. The benchmark source shows that the C API calls are much longer than D, highlight that in the post. People don't just want speed and portability, they want ease of use. Show them that D will be easier.
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Friday, 23 September 2016 at 13:31:35 UTC, Guillaume Piolat wrote: On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Nice but you should explain how to reproduce the results, if only to give more credit to the post. The benchmark source code can be found here https://github.com/libmir/mir/blob/master/benchmarks/glas/gemm_report.d. The post will be updated with the link soon.
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote: Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Nice but you should explain how to reproduce the results, if only to give more credit to the post.
Re: Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
Could someone with big reddit rating please post the link there? (maybe Andrei?)
Numerical age for D: Mir v0.18.0 is faster then OpenBLAS
Mir is LLVM-accelerated Generic Numerical Library for Science and Machine Learning. Benchmark: http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html Mir v0.18.0 release notes: https://github.com/libmir/mir/releases/tag/v0.18.0 The release includes Mir's D Foundation GSoC project. Do not forget to star the project: https://github.com/libmir/mir Best regards, Ilya