Cuda Machine Problem1

Machine Problem 1
Device Query

The objective of this machine problem is to understand the capabilities of the NVIDIA GPU you will be working with for your machine problems. You will also test your environment and make sure you can build and run your CUDA programs.
Write a code that could identify the number and type of CUDA devices on the GPU servers, the clock rate, number of streaming multiprocessors (SM), number of cores, warp size, amount of global memory, amount of constant memory, amount of shared memory per block, number of registers available per block, maximum number of threads per block, maximum size of each dimension of a block, and the maximum size of each dimension of a grid.
For this and other machine problems, you may consult the Lecture Slides on GPU Architectures and Computing and the GPU Server and CUDA Environment Tutorial on the course website. You may also consult the NVIDIA CUDA C Programming Guide.

Submission Instructions:
This machine problem is to be done individually. Students must run through the assignment by themselves, include their own solutions and analyses, and turn in their own reports. Submit a single zip file, “MP1_YourLastName.zip”, containing your code (e.g., MP1.cu, with your name and student ID on top of the code), and a report in pdf, MP1_YourLastName.pdf, where you present your work by including your CUDA code and the Visual Studio output screenshots, analyses of your results, and discussions of anyoutstandingissues.