N.B.: PDF files of presentations are now linked below.
Date: Tuesday, November 11, 2008.
Organizer: Claudio Albanese (King's College), email
Presenters: Michael Giles (Oxford University), the NAG team, Gernot Ziegler (nVidia) and Claudio Albanese
Admission: Free but registration is required.
Summary: The workshop provides an introduction to GPU programming based on the nVidia CUDA language and reviews applications to Financial Engineering. The morning session covers hardware configurations of nVidia Tesla cards, kernel writing with CUDA, CUBLAS and CUFFT libraries, asynchronous programming patterns and multi-GPU platforms. The afternoon and evening sessions dwell on practical applications to Financial Engineering.
Parallel algorithms executing on clusters can be ported to GPUs and reap massive performance gains. The availability of global shared memory on GPU chipsets makes it also possible to leverage on complex parallel designs with high intern-node communication to execute tasks such as matrix multiplication in CUBLAS. By attending, you will learn how this new technology can impact financial model design and learn of pricing algorithms particularly well suited to seize the power of GPU computing.
Schedule
| Morning Session, 9 am to 12 noon |
Topic: GPU programming and hardware architectures
Location: King's College London, River Room
Presenters: Gernot Ziegler (nVidia), Claudio Albanese |
Afternoon Session, 12:50 pm to 4 pm |
Topic: Financial Engineering Applications
Location: King's College London, River Room
Presenters: NAG team, Claudio Albanese |
| Evening Session, Time: 4:20pm to 7:30 pm |
Location: King's College London, Lecture Room K2.31
Topic: Financial Engineering Applications
Panel discussion and seminar by Professor Michael Giles
|
Detailed Programme
MORNING SESSION . GPU programming and hardware architectures
Location: King's College London, River Room
Time: 9 am to 12 noon, coffee break at 10:30
Lecturers: Claudio Albanese, King's College and Gernot Ziegler, nVidia
Tesla hardware architecture
Single instruction multiple data (SIMD) processors
Memory architecture
Writing device kernels in CUDA
Asynchronous programming
Thread synchronization and queue management
Single versus double precision arithmetic
Embarassingly parallel applications
Complex parallel applications
Memory management and bank conflicts
CUBLAS and
CUFFT
CUDA and higher level languages
Programming multi-GPU configurations
Q&A
Presentation slides by Claudio Albanese (part I)
Presentation slides by Gernot Ziegler
Additional tutorial materials by nVidia
AFTERNOON SESSION. Financial Engineering Applications
Time: 12:50 pm to 3:00 pm
Lecturer: Claudio Albanese, King's College
Location: King's College London, River Room
Operator methods and direct kernel manipulation
Fast exponentiation
Kernel smoothness and the Courant condition
Moment methods for path dependent options
Abelian path dependents and block diagonalizations
Dynamic conditioning
Kernels and long step Monte Carlo
Multi-threaded optimization algorithms on multi-GPU platforms
Presentation slides by Claudio Albanese, part II
Presentation slides by Claudio Albanese, part III
Presentation slides by David Sayers
Time: 3:00 pm to 3:15 pm, coffee break
Time: 3:15 pm to 4:00 pm
David Sayers, NAG
Location: King's College London, River Room
Title: NAG's libraries and multicore for Quant Finance
NAG's applicability in finance
Recent NAG developments
NAG and multi-core architectures
EVENING SESSION. Financial Engineering Applications
Time: 4:20 pm to 7:30 pm
Location: King's College London, Lecture Room K2.31
Panel discussion
Lecturer: Michael Giles, (Oxford University)
Location: King's College London, Lecture Room K2.31
Title: Financial computing on NVIDIA GPUs
Trends in HPC
Emergence of GPUs
CUDA programming
LIBOR Monte Carlo example
3D finite difference application
Presentation slides by Michael Giles
|