主要内容

来自Matlab代码的内核创建

MATLAB代码结构和模式创建CUDA®GPU内核

GPU Coder™生成和执行CUDA内核的特定算法结构和模式在你的MATLAB®代码。生成的代码调用优化了nvidia®CUDA库,包括cuFFT、cuSolver、cuBLAS、cuDNN和TensorRT。生成的代码可以作为源代码、静态库或动态库集成到您的项目中,并且可以为嵌入在NVIDIA Jetson、DRIVE和其他平台上的桌面、服务器和gpu进行编译。GPU编码器可以让你把手写的CUDA代码合并到你的算法和生成的代码。

应用程序

展开全部

GPU编码器 生成GPU代码马铃薯草代码
GPU环境检查 验证并搭建GPU代码生成环境

功能

展开全部

codegen 生成C / C ++代码马铃薯草代码
GPUCODER. 开放GPU编码器应用程序
Coder.CheckGPuInstall. 验证GPU代码生成环境
coder.gpuConfig 配置参数CUDA代码生成的马铃薯草代码使用GPU编码器
coder.gpu.kernel 编译指示映射-循环到GPU内核
coder.gpu.kernelfun Pragma将函数映射到GPU内核
coder.gpu.nokernel. Pragma禁用内核创建循环
Coder.CEVAL. 呼叫外部C / C ++函数
coder.gpu.torations. Pragma为代码生成器提供信息,用于在可变绑定循环上进行并行化决定
coder.gpu.constantMemory 将一个变量映射到GPU上的固定内存的Pragma
coder.gpu.persistentMemory Pragma将变量分配为GPU上的持久内存
gpucoder.atomicadd 自动地将指定的值添加到全局内存或共享内存中的变量中
gpucoder.atomicAnd 原子上执行位和在全局或共享内存中的指定值和变量之间
gpucoder.atomicCAS 原子上比较并交换全局或共享内存中变量的值
gpucoder.atomicdec. 在全局内存或共享内存中,在指定的上限内原子递减一个变量
gpucoder.atomicExch 用指定的值原子地交换全局或共享内存中的变量
gpucoder.atomicInc 在指定的上限内的全局或共享内存中的原子上递增变量
gpucoder.atomicMax 原子地找到指定值与全局或共享内存中的变量之间的最大值
gpucoder.atomicmin 在全局内存或共享内存中,自动查找指定值和变量之间的最小值
gpucoder.atomicor. 在全局或共享内存中的指定值和变量之间原子地执行位或
gpucoder.atomicsub. 原子从全局或共享内存中的变量中减去指定值
gpucoder.atomicxor. 在全局或共享内存中的指定值和变量之间原子地执行逐位异或
gpucoder.stencilKernel 创建CUDA模板函数的代码
gpucoder.matrixmatrixkernel. 优化GPU实现包含矩阵运算的函数
gpucoder.batchedMatrixMultiply 优化了GPU实现矩阵乘法的批量运算
gpucoder.stringmatrixmultipliply. 优化的GPU实施中的实施和批量矩阵乘法操作
gpucoder.batchedmatrixmultiplyadd 优化了图形处理器的矩阵乘法与加法运算的批量实现
gpucoder.stridedMatrixMultiplyAdd 优化了GPU实现跨步、批处理的矩阵乘法与加法运算
gpucoder.sort 优化的GPU实现马铃薯草排序函数
GPUCODER.RANSPOSE. 优化的GPU实现马铃薯草转置矩阵函数
gpucoder.reduce.reduce. 优化的GPU实现减少操作

对象

展开全部

coder.gpuConfig 配置参数CUDA代码生成的马铃薯草代码使用GPU编码器
Coder.codeConfig C / C ++代码生成的配置参数马铃薯草代码
编码器。EmbeddedCodeConfig C / C ++代码生成的配置参数马铃薯草代码与嵌入式编码器
coder.gpuEnvConfig 创建包含传递参数的配置对象Coder.CheckGPuInstall.用于执行GPU代码生成环境检查

主题

来自元素明智循环的内核

从包含Scalarized,Element-Wise Math操作的MATLAB函数创建内核。

分散-聚集类型操作的内核

从MATLAB函数中创建包含约简操作的内核。

来自库调用的内核

目标GPU优化数学图书馆,如Cublas,Cusolver,袖口和推力。

金宝app支持GPU阵列

生成CUDA代码,使用GPU阵列。

遗留代码集成

使用用于代码生成的MATLAB代码集成自定义GPU代码。

设计模式

为包含计算设计模式的MATLAB函数创建内核。

GPU内存分配和最小化

内存分配选项和GPU编码器的优化。

什么是半精度?

介绍MATLAB和Simulink中的半精度数据类型金宝app®

半精度代码生成支持金宝app

支持C/ c++和GPU代码生成功能,支持半精度输入。金宝app

特色的例子