nvidia显卡加速matlab,利用nvidia cuda加速simulink S-function
本帖最后由 蓝云风翼 于 2010-9-15 21:54 编辑
#define S_FUNCTION_NAME simuCuda /* Defines and Includes */
#define S_FUNCTION_LEVEL 2
#include "simstruc.h"
static void mdlInitializeSizes(SimStruct *S)
{
ssSetNumSFcnParams(S, 0);
if (ssGetNumSFcnParams(S) != ssGetSFcnParamsCount(S)) {
return; /* Parameter mismatch reported by the Simulink engine*/
}
if (!ssSetNumInputPorts(S, 1)) return;
if (!ssSetNumOutputPorts(S,1)) return;
ssSetInputPortDirectFeedThrough(S, 0, 1);
ssSetInputPortRequiredContiguous(S,0,1);
ssSetInputPortMatrixDimensions(S,0,120,160);
ssSetOutputPortMatrixDimensions(S,0,120,160);
ssSetInputPortDataType(S, 0, SS_UINT8);
ssSetOutputPortDataType(S, 0, SS_UINT8);
ssSetNumSampleTimes(S, 1);
ssSetOptions(S, SS_OPTION_EXCEPTION_FREE_CODE);
}
static void mdlInitializeSampleTimes(SimStruct *S)
{
ssSetSampleTime(S, 0, INHERITED_SAMPLE_TIME);
ssSetOffsetTime(S, 0, 0.0);
//one time CUDA initialization
if(!InitCUDA()) {
ssPrintf("cuda initialization failed !!!\n");
}
}
//this function is called once for each input sample
static void mdlOutputs(SimStruct *S, int_T tid)
{
uint8 *x = (uint8*) ssGetInputPortSignal(S,0);
uint8 *y = (uint8*) ssGetOutputPortSignal(S,0);
processNewFrame(x, y);
}
static void mdlTerminate(SimStruct *S)
{}
/* Simulink/Real-Time Workshop Interface */
#ifdef MATLAB_MEX_FILE /* Is this file being compiled as a MEX-file? */
#include "simulink.c" /* MEX-file interface mechanism */
#else
#include "cg_sfun.h" /* Code generation registration function */
#endif
在上面的代码中无论是mdlInitializeSampleTimes或mdlInitializeSizes函数我们采用CUDA执行一个初始化的时间。对于数据样本我们调用CUDA函数的processNewFrame,这将反过来输入和输出GPU的参数
CUDA代码需要和Simulink程序在同一个源文件中。这种结合的源文件(支持CUDA + Simulink的S -函数)名为“simuCuda.cu”可以从MATLAB的内部使用下面的命令行编译,这将创建mex文件:simuCuda.mex32
nvmex -f nvmexopts.bat simuCuda.cu -IF:\cuda\include -I'F:\cuda\cuda sdk\common\inc' -LF:\cuda\lib -L'F:\cuda\cuda sdk\common\lib' -lcudart -lcutil32
注意: 你需要链接CUDA 的“include” 和 “library” , 使用 –L, -I and –l flags.
将相关您使用的 CUDA dlls(e.g. cudart.dll, cutil32.dll etc) 放到simuCuda.mex32 文件目录下
创建一个Simulink模型,并添加一个S -功能块。在块的参数提供的名称simuCuda。您现在可以运行模型,通过使用GPU观察所得的性能。
需要的工具:
nvmex.pl – copy this file to the MATLAB “bin” directory
·nvmex_helper.m
·nvmex.m
·nvmexopts.bat
(for Matlab 2008a and up)
2010-9-15 21:37 上传
点击文件名下载附件
cuda加速simulink
下载积分: 贝壳 -1
nvidia显卡加速matlab,利用nvidia cuda加速simulink S-function相关推荐
- matlab cuda 加速,Matlab中调用CUDA加速的方法……
呃,大家都知道哈,现在nVIDIA显卡的计算能力那是越来越强大了,不利用一下岂不是可惜了,尤其是现在Fermi大大加强了双精度计算能力之后,N卡+Matlab已经变成了我们解决数理问题的强大工具 ...
- centos7 cuda测试_Linux/Centos7 nvidia显卡驱动安装 以及安装 CUDA
1. 安装前的准备 检查是否有Nvidia显卡 lspci | grep -i nvidia 正常应该显示Nvidia显卡的型号,没有任何显示需要更新pci硬件库update-pciids 2.检查显 ...
- Kali Linux 安装Nvidia显卡驱动(二)CUDA, Pyrit and Cpyrit-cuda
1:已增加KaliLinux官方源或其它源后更新. apt-get update && apt-get upgrade -y && apt-get dist-upgra ...
- 我的NVIDIA开发者之旅——利用NVIDIA TAO工具包3.0和Deepstream快速搭建车辆信息识别系统
利用NVIDIA TAO工具包3.0和Deepstream快速搭建车辆信息识别系统 实现目标 部署工具:NVIDIA DeepStream SDK 简单设置参数 工作流程 注意事项 GPU深度学习推理 ...
- linux给进程加速,Linux 利用并行进程加速命令执行
现在,计算机能力有了大幅度的提升,但是如果你有一个需要大量运算的程序,仅仅运行在一个核心上,那么其他的核心都会被闲置.如果想提高速度,软件必须留意并充分利用大核心. 下面,我门看一下如何让命令运行得更 ...
- 如何使用Nvidia显卡对abaqus进行加速
本文介绍了如何使用 Nvidia CUDA1的加速功能,使Abaqus计算加速. 原文 驱动都设置完成可直接查看查看 环境变量设置 安装显卡 提前查询好主板是否与显卡兼容,在购买显卡. 本次使用的是N ...
- Ubuntu 16.04系统中利用CUDA安装更新NVIDIA显卡驱动程序的方法
严正声明:本文系作者davidhopper原创,未经许可,不得转载. 在ThinkPad系列笔记本电脑中使用过Ubuntu 16.04系统的同学都知道,NVIDIA显卡驱动程序特别难安装.以我使用的T ...
- 【CUDA开发】CUDA的安装、Nvidia显卡型号及测试
说明:想要让Theano在Windows8.1下能利用GPU并行运算,必须有支持GPU并行运算的Nvidia显卡,且要安装CUDA,千万不要电脑上是Intel或AMD的显卡,却要编写CUDA. 文中用 ...
- Ubuntu16.04 Caffe系列 最新更新安装教程 附NVIDIA显卡安装及cuda、cudnn、caffe的安装
博文版本:NVIDIA 418.74(对应显卡2070,如果是1060的请下载较低版本的),cuda 10.0, cudnn 7.6.2, opencv 3.4.3 总结了一些网上其他教程的坑并已修改 ...
最新文章
- 【2016.12.04】JavaScript笔记
- Matplotlib实例教程(七)密度图
- 计算机上检查视力表,视力检测(30cm视力表自测)
- 【Clickhouse】问题记录
- 解读Cardinality Estimation算法(第二部分:Linear Counting)
- Java:重写equals()和hashCode() 1
- 远程电脑桌面控制怎么看计算机,计算机如何通过远程控制,可以查看他人电脑屏幕...
- 我改了500个Bug,但是!!
- 现代办公通讯手段对比分析
- matlab中waitbar用法,matlab中waitbar
- php面向对象精要(3)
- C\C++中函数后面加const
- 计算机培训机构年终总结范文,2020老师培训年终工作总结范文5篇
- 从数学归纳法到递归算法
- Windows系统目录及常用快捷键
- apache poi excel word 加密,不用借助其他jxcell.jar包
- 牛客练习赛68 B.牛牛的算术
- 一路狂奔的“幸运咖”,再造下一个“蜜雪冰城”?
- [推荐]资金计划与预算的联系与区别
- Tomcat环境变量配置(转载)