Software Development

CUDA and OpenCL Support

Mathematica 8 harnesses GPU devices for general computations using CUDA and OpenCL, delivering dramatic performance gains. A range of Mathematica 8 GPU-enhanced functions are built-in for areas such as linear algebra, image processing, financial simulation, and Fourier transforms. Also included is a framework for building and loading CUDA or OpenCL programs into the Mathematica kernel. Mathematica 8 offers the most comprehensive and easy to use high-level interface to GPU programming and computation on the market today.

  • Integrated as a built-in core component of Mathematica. »
  • Hand-optimized GPU functions for linear algebra, financial computation, and image processing. »
  • Load user-defined CUDA and OpenCL programs, binaries, or libraries. »
  • Platform-independent way to compile CUDA and OpenCL programs. »
  • Symbolically generate CUDA or OpenCL programs. »
  • Easy setup, using Mathematica's paclet system to get required user software. »
  • OpenCLLink support for both NVIDIA and ATI hardware. »
  • Compatibility with CUDA compute architectures 1.0 to 2.0 with support for both double and single precision. »
  • CUDALink and OpenCLLink scale to utilize all GPUs on the system. »
  • Use CUDALink or OpenCLLink over the network using remote kernels.
  • Scale CUDALink or OpenCLLink over multiple machines using gridMathematica »
  • Built on Mathematica 8 technologies: LibraryLink, CCompilerDriver, and SymbolicC. »
Query CUDA and OpenCL Device Information »Use Mathematica's Extensive Import and Export Functionality »GPU Enhanced Image Processing Functionality »
GPU Enhanced Fast Fourier Transforms »Integration with Built-in Mathematica Functions »GPU Enhanced Linear Algebra »
GPU Enhanced Financial Computation »Simulate Thousands of Particles in Real Time »Integration with Dynamic »
Integration with Manipulate »Do Real-Time Volumetric Rendering »Use Symbolic Graphics Primitives to Visualize Results »
Do on-the-Fly Code Generation »Symbolic Program Generation »Automatic Single to Double Precision Conversion »
Loaded GPU Programs Behave as Mathematica Functions »Optimized Launch for Multiple GPU Functions »Get Information on Loaded Programs »
Interface to CUDA and OpenCL Memory »Get Information on GPU Memory »Native Support for CUDA and OpenCL Types »
Extensive Real-World Application Examples »Multiple Device Support »Scalable Across Networks »
Symbolically Generate CUDA and OpenCL Programs »Easy Conversion between CUDA and OpenCL »Compile CUDA Programs to Library, Executable, PTX, or CUBIN »
Automatic Download and Setup of User Software »Extensive Documentation »
IN THE NEWS...


Select Language: jaespt-brzhruko