GPU Users Group
Welcome to the GPU users group at Princeton University! This group is a special interest group intended to be a resource for those involved in general-purpose computing on graphics processing units (GPGPU) on campus. By bringing together GPU users and enthusiasts from different domains, the group hopes to potentially find solutions applicable to other domains, share knowledge and keep updated with the newest technology.
Its first meeting was held on Oct 9, 2012 and was attended by 18 people, mostly graduate students, postdocs and research staff from seven academic departments, namely Chemical & Biological Engineering, Computer Science, Ecology & Evolutionary Biology, Electronic Engineering, Geosciences and Physics as well as Princeton Plasma Physics Laboratory. These research groups are currently utilizing GPU computing to enable their respective research.
The Princeton Institute for Computational Science & Engineering (PICSciE) is fully supportive of this group. It will help by providing resources and training as well as inviting speakers and experts in GPU computing.
The second GPU users group meeting will be held on Tuesday, November 6 at noon in the Visualization Lab, 346 Lewis Library. Lunch will be provided.
1) Bei Wang presentation and Q&A (15 minutes) Title: Gyrokinetic Particle in Cell (PIC) Simulations on GPU
2) What specific technology/topics would you like to see included in the future training?
3) "Un-meeting" session (participants propose discussion items)
GPU Computing Workshop with NVIDIA, Dates & Location TBD
|Intro||Intro to GPU Computing||Lecture||What is a GPU? What are methods to accelerate your work|
|Intro||Using GPU Libraries||Lecture||Overview of libraries, review of example using cublas|
|Intro||Using OpenACC||Lecture||Intro to OpenACC, api, examples, tips|
|Intro||CUDA 101||Lecture||Basics of CUDA programming, CUDA syntax, memory allocation, kernel constructs, kernel launching|
|Intermediate||CUDA Basic Optimizations||Lecture||Making CUDA programs run fast, memory coalescing, launch optimization, occupancy|
|Intermediate||CUDA Visual Profiler||Lecture||Intro to visual profiler, how to profile an app, interpreting results|
|Intro||GPU Programming sequence||Hands-On||Matrix multiply, starting with cpu code, through OpenACC, then CUDA|
|Intro||Write your own GPU code||Hands-On||Write basic kernel, do basic operations with threadIdx, etc.|
|Intermediate||GPU Programming sequence||Hands-On||Grid Example|
|Intermediate||Visual profiler||Hands-On||Use Visual profiler to find memory coalescing issues in grid example|
|Intermediate||Write your own GPU code||Hands-On||Students are given their own programming challenge to solve, such as creating a histogram from a 1-D array|
|Intermediate||Programming in Thrust||Hands-On||Basics of thrust: vectors, transforms|
Join Mailing List
Bei Wang, HPC Fusion Research Specialist/Postdoc Researcher, PPPL/PICSciE/PACM
334 Peter B Lewis Library
Ma. Florevel Fusin-Wischusen, Institute Manager, PICSciE
335 Peter B Lewis Library