11.07.2015 Views

Vectorizing the forward mode of ADOL-C on a GPU ... - Autodiff.org

Vectorizing the forward mode of ADOL-C on a GPU ... - Autodiff.org

Vectorizing the forward mode of ADOL-C on a GPU ... - Autodiff.org

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

. K. Kulshreshtha, A. K<strong>on</strong>iaeva 9 / 13 <str<strong>on</strong>g>Vectorizing</str<strong>on</strong>g> <str<strong>on</strong>g>ADOL</str<strong>on</strong>g>-C using CUDA Euro AD 10.06.2013Implementati<strong>on</strong>.Implementati<strong>on</strong>• namespace adtlc encapsulates <str<strong>on</strong>g>the</str<strong>on</strong>g> implementati<strong>on</strong>• class adtlc::adouble analoguous to scalar traceless <str<strong>on</strong>g>forward</str<strong>on</strong>g>• Member functi<strong>on</strong>s and operators are annotated __device__ toindicate callablity inside <strong>GPU</strong> kernels• Evaluati<strong>on</strong> routine using adtlc::adouble objects is completelyanaloguous to traceless CPU based implementati<strong>on</strong>• <strong>GPU</strong> kernel functi<strong>on</strong> can have a signature like__global__ void kernel_func(double* inx, size_t n,double* outy, size_t m, double* dery);• The annotati<strong>on</strong> __global__ indicates that all <strong>GPU</strong> threads have accessto this code, and <str<strong>on</strong>g>the</str<strong>on</strong>g> distributi<strong>on</strong> (blocks,threads) must be specified

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

Saved successfully!

Ooh no, something went wrong!