Quantitative Analysis
Parallel Processing
Numerical Analysis
C++ Multithreading
Python for Excel
Python Utilities
Services
Author

I. Introduction into GPU programming.
II. Exception safe dynamic memory handling in Cuda project.
III. Calculation of partial sums in parallel.
IV. Manipulation of piecewise polynomial functions in parallel.
V. Manipulation of localized piecewise polynomial functions in parallel.

Parallel Processing.


his section is an introduction to combined use of Cuda-based parallel processing, C++, Python and boost::python. We present basic interoperability recipes and develop building blocks for Cuda-accelerated implementation of mathematical procedures presented in the section ( Implementation tools II ) and tested in the section ( Numerical analysis ).



Table of Contents.

I. Introduction into GPU programming.
1. What are GPU and CUDA?
2. Selecting GPU.
3. Setting up development environment.
A. Windows notes.
4. Combined use of Cuda, C++ and boost::python.
5. Debugging of boost::python binary using Visual Studio.
6. Debugging of boost::python/Cuda binary using Visual Studio.
7. Using printf in device code.
II. Exception safe dynamic memory handling in Cuda project.
1. Allocating and deallocating device memory. ots::cuda::memory::Device class.
2. Accessing device memory. ots::cuda::memory::Host class.
3. Crossing host/device boundary. ots::cuda::memory::DeviceHandler class.
4. Accessing memory in __device__ code. ots::cuda::memory::Block class.
5. Handling two dimensional memory blocks. Do not use cudaMallocPitch.
6. Allocation of memory from Host scope.
7. Tagged data. Compiler assisted data verification.
III. Calculation of partial sums in parallel.
IV. Manipulation of piecewise polynomial functions in parallel.
1. History of changes (PiecewisePoly).
2. Calculus behind the PiecewisePoly project.
3. Code structure (PiecewisePoly project).
4. Python scripting for PiecewisePoly project.
V. Manipulation of localized piecewise polynomial functions in parallel.
1. Calculus behind the LPoly class.
2. Crudification operator for LPoly class.
3. Implementation of LPoly class.



















Copyright 2007