是否有任何基准,例如“NAS 并行基准”,但对于 CUDA-GPU、MPI-CPU+CUDA-GPU 或(OpenCL GPU+CPU),我在哪里可以获取它?
据我所知,MPI-CPU+CUDA-GPU 的例子是HPL(CUDA 的高性能计算 Linpack 基准测试)。这是“HPL - 分布式内存计算机的高性能 Linpack 基准测试的可移植实现”的修改版本。
是否有任何基准,例如“NAS 并行基准”,但对于 CUDA-GPU、MPI-CPU+CUDA-GPU 或(OpenCL GPU+CPU),我在哪里可以获取它?
据我所知,MPI-CPU+CUDA-GPU 的例子是HPL(CUDA 的高性能计算 Linpack 基准测试)。这是“HPL - 分布式内存计算机的高性能 Linpack 基准测试的可移植实现”的修改版本。
MAGMA 是一个基于 CUDA 的 BLAS 库。
其源代码包含大量针对 BLAS1、2、3 和 LAPACK rotines 的测试程序,可用作 SMP-CPU 与 CUDA-GPU 的基准测试。
通过使用不同的 makefile,它可以比较几个 BLAS/LAPACK 库在 SMP-CPU 和 CUDA-GPU 上的性能。
并且 MAGMA 还具有多 GPU 支持。
这是它的示例输出testing_dgemm
$ ./testing_dgemm -l
MAGMA 1.4.0 , capability 3.0
device 0: Tesla K20m, 705.5 MHz clock, 4799.6 MB memory, capability 3.5
Usage: ./testing_dgemm [options] [-h|--help]
If running lapack (option --lapack), MAGMA and CUBLAS error are both computed
relative to CPU BLAS result. Else, MAGMA error is computed relative to CUBLAS result.
transA = N, transB = N
M N K MAGMA Gflop/s (ms) CUBLAS Gflop/s (ms) CPU Gflop/s (ms) MAGMA error CUBLAS error
=========================================================================================================
1088 1088 1088 542.60 ( 4.75) 885.12 ( 2.91) 16.09 ( 160.07) 4.02e-15 4.02e-15
2112 2112 2112 594.08 ( 31.72) 1013.63 ( 18.59) 17.80 (1058.40) 5.58e-15 5.58e-15
3136 3136 3136 595.65 ( 103.55) 1014.95 ( 60.77) 67.72 ( 910.87) 7.64e-15 7.64e-15
4160 4160 4160 591.86 ( 243.27) 1030.00 ( 139.79) 86.60 (1662.71) 8.79e-15 8.96e-15
5184 5184 5184 589.67 ( 472.52) 1035.98 ( 268.95) 91.06 (3059.81) 1.06e-14 1.06e-14
6208 6208 6208 583.73 ( 819.73) 1044.25 ( 458.23) 95.69 (5000.59) 1.18e-14 1.19e-14
7232 7232 7232 585.58 (1291.86) 1044.57 ( 724.21) 99.09 (7634.04) 1.15e-14 1.15e-14
8256 8256 8256 586.20 (1919.98) 1045.94 (1076.05) 98.31 (11447.84) 1.21e-14 1.21e-14
9280 9280 9280 585.82 (2728.40) 1046.96 (1526.67) 99.49 (16064.95) 1.54e-14 1.54e-14
10304 10304 10304 586.37 (3731.41) 1048.27 (2087.26) 100.38 (21797.19) 1.67e-14 1.67e-14