GPU Enhanced Stream- Based Matrix Multiplication

Authors

  • L.M. Itu Transilvania University of Brasov, Romania
  • C. Suciu Transilvania University of Brasov, Romania
  • F. Moldoveanu Transilvania University of Brasov, Romania
  • A. Postelnicu Transilvania University of Brasov, Romania

Keywords:

matrix multiplication, GPU, stream, CUDA

Abstract

The paper introduces an algorithm that improves the value of the real giga floating point operations per second (GFLOPS) for matrix multiplication algorithm on Graphical Process Unit-GPU by overlapping the data transfers between (CPU) and the device (GPU) with the kernel execution. The input matrices are divided into n sections and the output matrix into n2 sections. Streams are used to perform simultaneous data transfers and kernel executions in order to hide the memory copy operations. The results show that improved execution times and GFLOP values are obtained. The optimum value of n depends mainly on the matrix dimension and on the GPU type.

Author Biographies

L.M. Itu, Transilvania University of Brasov, Romania

Dept. of Automatics

C. Suciu, Transilvania University of Brasov, Romania

Dept. of Automatics;
Siemens Corporate Technology, Romania

F. Moldoveanu, Transilvania University of Brasov, Romania

Dept. of Automatics

A. Postelnicu, Transilvania University of Brasov, Romania

Dept. of Mechanical Engineering

Downloads

Published

2013-01-16

Issue

Section

ELECTRICAL ENGINEERING, ELECTRONICS AND AUTOMATICS