|
http://code.google.com/p/komrade/wiki/Tutorial
- What is Komrade?
- Komrade is a C++ template library for CUDA. Komrade allows you to program GPUs using an interface similar the C++ Standard Template Library (STL).
- What is a C++ template library?
- C++ templates are a way to write generic algorithms and data structures. A template library is simply a cohesive collection of such algorithms and data structures in a single package.
- Do I need to build Komrade?
- No. Since Komrade is a template library you just #include the appropriate header files into your .cu file and compile with nvcc.
- What data structures does Komrade provide?
- Currently Komrade provides komrade::host_vector and komrade::device_vector, which are analogous to std::vector in the STL and reside in the host/device memory. These vector data structures simplify memory management and transferring data between the host and device.
- What algorithms does Komrade provide?
- sorting: komrade::sort and komrade::sort_by_key
- tranformations: komrade::transform
- reductions: komrade::reduce and komrade::transform_reduce
- scans: komrade::inclusive_scan, komrade::exclusive_scan, komrade::transform_inclusive_scan, etc.
- Refer to Documentation for a complete listing
- What version of CUDA do I need to develop applications with Komrade?
- Komrade requires CUDA 2.2 (or CUDA 2.2 beta)
- What platforms does Komrade support?
- Komrade has been tested extensively on the following platforms
- Ubuntu Linux 8.04 and 8.10 (32-bit/64-bit) with GCC 4.2 and 4.3
- Windows Vista (32-bit) with Visual Studio 2008 Express
- Windows XP with Visual Studio 2005
- Does Komrade depend on any other libraries?
- No, Komrade is self-contained and requires no additional libraries.
- What open-source license does Komrade use?
|
|