GPU Computing
GPU computing has become ubiquitous in many areas, ranging from scientific computing and machine learning to games and many more. GPUs provide a parallel processing model that makes it possible to accelerate computations significantly and to handle large datasets efficiently, leading to faster and more powerful processing capabilities. With its GPU-aware array framework, high-level functions and powerful compiler, the Wolfram Language offers state-of-the-art functionality designed to leverage the capabilities of GPUs. Immediately access and manipulate data directly on GPUs and boost productivity using high-level linear algebra, statistics and mathematical functions without sacrificing performance.
GPUArray — store data in memory for GPU
Normal — retrieve data from GPU
Arrays
GPUArrayQ — test whether an object is a valid GPU array
ArrayQ ▪ VectorQ ▪ MatrixQ ▪ ArrayDepth ▪ Dimensions ▪ Length ▪ Part ▪ First ▪ Last ▪ ByteCount
Linear Algebra »
Dot — matrix operations
Transpose ▪ ConjugateTranspose ▪ Diagonal ▪ Tr
LinearSolve — solve linear systems
Inverse ▪ PseudoInverse ▪ SingularValueDecomposition
LeastSquares — solve linear least-squares problems
Discrete Fourier Analysis »
Fourier — find the discrete Fourier transform
InverseFourier — find the discrete inverse Fourier transform
Random Number Generation »
SeedRandom — use "GPU" method for pseudorandom number generation
RandomInteger ▪ RandomReal ▪ RandomComplex
Statistics »
Mean — descriptive statistics
GeometricMean ▪ Variance ▪ Skewness ▪ StandardDeviation ▪ RootMeanSquare ▪ Kurtosis
Sort — order statistics
Mathematical Functions »
Plus, Times — arithmetic functions
Subtract ▪ Divide ▪ Total ▪ Mean ▪ Accumulate ▪ Differences ▪ Ratios
Sin, Cos — trigonometric functions
Tan ▪ ArcSin ▪ ArcCos ▪ ArcTan
Exp, Log — transcendental functions
Log2 ▪ Log10 ▪ Power ▪ Sqrt ▪ CubeRoot
Sinh, Cosh — hyperbolic functions
Tanh ▪ ArcSinh ▪ ArcCosh ▪ ArcTanh
Ceiling, Floor — integer functions
Round ▪ IntegerPart ▪ FractionalPart
Abs, Sign — absolute values and signs
RealAbs ▪ RealSign ▪ Re ▪ Im ▪ Arg ▪ Conjugate
Visualization »
ArrayPlot, MatrixPlot — plot values of an array
ListPlot — data visualization
ListLinePlot ▪ ListDensityPlot ▪ ListContourPlot ▪ ListLogPlot ▪ ListPolarPlot ▪ ParallelAxisPlot ▪ RadialAxisPlot
Code Compilation & Generation »
FunctionCompileExport — export code suitable for GPU architecture
FunctionCompile ▪ FunctionCompileExportLibrary
GPU Programming »
CUDALink — collection of low-level CUDA functions
OpenCLLink — collection of low-level OpenCL functions