是否有 CUDA-GPU 或 MPI-CPU+CUDA-GPU 的基准? [关闭]
Posted
技术标签:
【中文标题】是否有 CUDA-GPU 或 MPI-CPU+CUDA-GPU 的基准? [关闭]【英文标题】:Are there any benchmarks for CUDA-GPU or for MPI-CPU+CUDA-GPU? [closed] 【发布时间】:2013-09-19 04:42:21 【问题描述】:有没有诸如"NAS parallel benchmark" 之类的基准测试,但是对于 CUDA-GPU、MPI-CPU+CUDA-GPU 或 (OpenCL GPU+CPU),我可以在哪里获取它?
据我所知,MPI-CPU+CUDA-GPU 的示例是 HPL(High Performance Computing Linpack Benchmark for CUDA)。这是"HPL - A Portable Implementation of the High-Performance Linpack Benchmark for Distributed-Memory Computers"的修改版。
【问题讨论】:
【参考方案1】:MAGMA 是一个基于 CUDA 的 BLAS 库。
http://icl.utk.edu/magma/
它的源代码包含大量的BLAS1,2,3和LAPACK rotines的测试程序,可以作为SMP-CPU v.s.的基准测试。 CUDA-GPU。
通过使用不同的 makefile,它可以比较几个 BLAS/LAPACK 库在 SMP-CPU 和 CUDA-GPU 上的性能。
-
CPU 库:MKL、GotoBLAS、ATLAS、ACML
GPU 库:CUBLAS、MAGMA
而且 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
【讨论】:
据我了解,MAGMA-source-code(magma-1.4.0.tar.gz) 包含“MAGMA 为 CUDA、OpenCL 和 Intel Xeon Phi 提供实现”以及 MAGMA、CUBLAS 和阿特拉斯。还有一些用于 Xeon Phi 的库,是 MPI 还是 OpenCL? 如果我想在使用 MPI 的 CPU+GPU 的集群中使用 HPL,我必须在标准 HPL 中使用 MAGMA,还是 MAGMA 已经通过 MPI 包含此集群测试? @Alex Xeon Phi 是英特尔的多核 HPC 解决方案,类似于用于 Nviida 的 GPU 的 CUDA。而且我对 Magma 的 MPI 支持了解不多。以上是关于是否有 CUDA-GPU 或 MPI-CPU+CUDA-GPU 的基准? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
CU_CTX_SCHED_BLOCKING_SYNC 是不是使内核同步?
Exchange 2013升级到更高CU时出错:无法解析用户或组