Jacket for MATLAB
홈 > SW제품 > Jacket for MATLAB

Gbench

Jacket GBENCH (v1.0)

소개

Jacket GBENCH는 GPU 사용자가 자신의 GPU의 성능을 테스트할 수 있는 도구입니다. 지금까지 GPU의 성능 테스트는 엔비디아에서 제공하는 CUDA SDK에 내장된 devicequery, bandwidthtest 등 명령어를 실행하여 기초 성능을 평가하고, nbody 등의 결과를 돌려보는 것으로 성능으 테스트하였습니다. 현재의 TOP500 사이트와 같은 수퍼컴퓨터 벤치마킹 사이트에서 사용되는 HPL, linpack 벤치마크와 동일한 개념의 벤치마크 자료를 제공합니다. 특히, 기존 CPU와의 비교를 통해 얼마나 성능향상이 되는지 직접 테스트해볼 수 있습니다.

GBENCH는 다음의 6가지를 테스트하게 됩니다.

 

    1.   LU:   LU decomposition of 1024 x 1024 matrix
    2.   FFT:   Fast Fourier Transform of a 2^20 x 1 vector
    3.   BLAS:   Matrix multiplication of two 1024x1024 matrices
    4.   3D Conv:   Convolution of 64x64x64 array with 3x3x3 kernel
    5.   FOR/GFOR:   Matrix-vector multiplication of 1024x1024x32 array
    6.   Equations:   Solution of a system of 1024 equations


GBENCH는 이론적인 Gflops이 아닌 LU, FFT 등에서 사용되는 실측 Gflops 성능을 나타냅니다. 또한, 다양한 머신의 속도와 자신의 CPU, GPU에서의 속도를 비교할 수 있는 데이트를 출력해 줍니다.  특히, 동일한 precision, data size를 통한 측정을 통해 객관성을 보장박을 수있습니다.

 

GBENCH v1.0의 요구사항으로는 Jacket 1.2.1과 Matlab R2009b에서 작동됩니다. 특히, CUDA SDK 2.3이상의 드라이버와 툴킷을 설치해줘야 합니다.

다운로드

각 OS별로 아래의 링크를 통해 다운로드 받아 돌려볼 수 있습니다.
Linux 64-bit
Linux 32-bit
Windows 64-bit
Windows 32-bit

실행방법

GBENCH는 아래의 두가지 방법으로 실행할 수 있습니다. 

실행파일을 만들어 사용:
* MCR이 필요합니다. MATLAB Compiler Runtime (MCR)

1. 다운받은 압축파일을 풉니다.
2. MCR을 설치파일을 이용하여 설치합니다. 
    윈도우즈 시스템의 경우 [MCR_ROOT_LOCATION]\v711 을 환경변수에 추가해줘야 합니다.
3. gbench 실행파일을 실행합니다.
    리눅스의 경우 다음의 명령을 실행합니다. ./run_gbench.sh [MCR_ROOT_LOCATION]/v711

MATLAB 소스코드에서 직접 실행:

 Matlab함수 형식은 다음과 같습니다.  [gpu_times, cpu_times] = gbench(N)
따라서, jacket 이 정상 설치된 시스템에서 다음과 같이 명령을 실행합니다. 

> gbench
> gbench(N) % to run the tests N times

결과는 6개의 결과를 출력합니다. 결과는 그래프로 확인하실 수 있습니다.

 

Sample Results

아래는 실제 벤치마크 결과를 나태냅니다.
 
GBENCH results

GBENCH results

 

 

좀더 자세한 내용은 http://www.accelereyes.com/gbench 를 참고하시면 됩니다.