Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Interview questions on CUDA Programming? [closed]

Tags:

c

cuda

I have an interview coming up in a week's time for an entry level position that involves programming in CUDA (hopefully with C).

I was wondering if anybody can suggest some interview questions that I can expect during the interview.

I have gone through the official programming guide but I'm not all that convenient right now.

Thanks.

like image 586
Gitmo Avatar asked Dec 24 '09 13:12

Gitmo


People also ask

Why we use CUDA programming?

CUDA is a parallel computing platform and programming model developed by NVIDIA for general computing on its own GPUs (graphics processing units). CUDA enables developers to speed up compute-intensive applications by harnessing the power of GPUs for the parallelizable part of the computation.

Where is CUDA program used?

CUDA is a parallel computing platform and programming model for general computing on graphical processing units (GPUs). With CUDA, you can speed up applications by harnessing the power of GPUs.

In which language CUDA is written?

CUDA stands for Compute Unified Device Architecture. It is an extension of C/C++ programming. CUDA is a programming language that uses the Graphical Processing Unit (GPU).

What is CUDA and its types?

CUDA (or Compute Unified Device Architecture) is a parallel computing platform and application programming interface (API) that allows software to use certain types of graphics processing units (GPUs) for general purpose processing, an approach called general-purpose computing on GPUs (GPGPU).


1 Answers

Some questions I think you should prepare are:

  • How many different kind of memories are in a GPU ?
  • What means coalesced / uncoalesced?
  • Can you implement a matrix transpose kernel?
  • What is a warp ?
  • How many warps can run simultaneously inside a multiprocessor?
  • What is the difference between a block and a thread ?
  • Can thread communicate between them? and blocks ?
  • Can you describe how works a cache?
  • What is the difference between shared memory and registers?
  • Which algorithms perform better on the gpu? data bound or cpu bound?
  • Which steps will you perform to port of an application to cuda ?
  • What is a barrier ?
  • What is a Stream ?
  • Can you describe what means occupancy of a kernel?
  • What means structure of array vs array of structures?
like image 71
fabrizioM Avatar answered Oct 17 '22 09:10

fabrizioM