The purpose of this project is the design and implementation of multi-core and CUDA GPU algorithms in order to speed up advanced Bayesian machine learning applications to challenging problems in magnetic resonance imaging and low-level computer vision. The successful candidate would at the same time apply his/her parallel programming skills to problems of high relevance to medical and neuroscientific research, and learn about cutting-edge Bayesian machine learning methodology and advanced probabilistic image processing. If interested please contact Prof. Seeger (matthias.seeger@epfl.ch) or Prof. Falsafi (babak.falsafi@epfl.ch).
Please select one 20 minute time slot from http://www.doodle.com/tnphgz4mkze6meyz. Your presentation should be for 10 minutes or so. It should quickly cover the topic you chose, and then present CUDA-specific optimizations and results. Comparison with CPU-only implementations is highly desirable.
Please come to BC230 and not BC210 as posted on doodle.
My hope is that people from various disciplines will attend the course. I will assume very little in terms of background preparation (i.e., basic understanding of computers and programming in C). The goal of the course is to bring together people with strong programming expertise and skills with people with a strong need for solving compute-intensive programs that can potentially benefit from programming graphics processors.
The aim of the course is to provide hands-on experience in developing applications software for graphics processors with massively parallel computing resources. The target audiences of the course are those who want to develop exciting applications for these processors, as well as those who want to develop programming tools and future implementations for these processors. The initial part of the course focuses on a popular programming interface for graphics processors. The course continues with a closer view of the internal organization of graphics processors and how it impacts performance. Finally, implementations of applications and algorithms on graphics processors will be discussed.
The course will be focusing on NVIDIA processors and the CUDA™ programming tools. There will be several programming assignments. In addition students will have to propose and complete a final project. Each programming assignment will involve successively more sophisticated programming skills.
The course will require a basic understanding of computer organization and general C programming knowledge.
This course is available to graduate students outside of Electrical and Computer Engineering; it should be of particular interest to those in other research fields who need substantial, low-cost computing power available with modern Graphics Processing Units.
We will be using a lab courtesy of the Electrical and Computer Engineering Department of the University of Toronto. Mr. Tim Trant will soon contact you with information on how to activate your accounts. Important notes regarding fair account use policies:
Please read the “getting started” notes which are posted under the “Lab Assignments” section. Follow these steps to set up the CUDA SDK on your account.