19.11.2014 Views

Tutorial: Introduction to CUDA Fortran | GTC 2013

Tutorial: Introduction to CUDA Fortran | GTC 2013

Tutorial: Introduction to CUDA Fortran | GTC 2013

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Kernel Loop Directives (CUF Kernels)<br />

• Au<strong>to</strong>matic kernel generation and invocation of host code<br />

region (arrays in loops must reside on GPU)<br />

program incTest<br />

use cudafor<br />

implicit none<br />

integer, parameter :: n = 256<br />

integer :: a(n), b<br />

integer, device :: a_d(n)<br />

a = 1; b = 3; a_d = a<br />

!$cuf kernel <br />

do i = 1, n<br />

a_d(i) = a_d(i)+b<br />

enddo<br />

a = a_d<br />

if (all(a == 4)) write(*,*) 'Test Passed'<br />

end program incTest

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!