草庐IT

CMAKE_CUDA_ARCHITECTURES

全部标签

cuda 编程:矩阵运算讲解

本文主要介绍用CUDA实现矩阵运算(C=AxB)的几个基本方法,帮助大家理解矩阵在GPU上面的运算与CPU上的有何异同,通过实践上手CUDA的优化计算,相比基础方法,能提速10倍以上。本文内容涉及到CUDA矩阵1D运算,2D运算,共享内存,CUBLAS的使用文中的全部code:https://github.com/CalvinXKY/BasicCUDA/tree/master/matrix_multiplyV100上的测试对比:1.CPU矩阵乘运算矩阵C=A×BC=A\timesBC=A×B的数学运算,是线性代数里面最基本的内容,计算的基本公式如下:矩阵C中每个元素ci,jc_{i,j}ci,

一文彻底搞懂为什么OpenCV用GPU/cuda跑得比用CPU慢?

一、原因总结最近项目需要,发现了这个问题。网上找原因,汇总起来,有以下几点原因:1、首先对于任何一个CUDA程序,在调用它的第一个CUDAAPI时后都要花费秒级的时间去初始化运行环境,后续还要分配显存,传输数据,启动内核,每一样都有延迟。这样如果你一个任务CPU运算都仅要几十毫秒,相比而言必须带上这些延迟的GPU程序就会显得非常慢。2、其次,一个运算量很小的程序,你的CUDA内核不可能启动太多的线程,没有足够的线程来屏蔽算法执行时从显存加载数据到GPUSM中的时延,这就没有发挥GPU的真正功能。3、数据从内存传递到显存和cudaMalloc耗时很长,NVIDIA提供的nsight中的profi

Windows 环境下,cmake工程导入OpenCV库

        目录1、下载OpenCV库2、添加搜索路径3、添加环境变量4、CmakeLists.txt配置(1)配置步骤(2)CmakeLists.txt完整配置1、下载OpenCV库OpenCV官方下载地址:download|OpenCV4.6.0下载完毕后解压,便可以得到下面的文件2、添加搜索路径find_package会寻找findxxx.cmake或者xxxConfig.cmake文件,我们需要提前指明.cmake文件的搜索路径。OpenCVConfig.cmake :D:\\Download\\opencv4_6_0\\build\\x64\\vc15\\lib#list(APP

基于Docker的深度学习环境NVIDIA和CUDA部署以及WSL和linux镜像问题

基于Docker的深度学习环境部署1.什么是Docker?2.深度学习环境的基本要求3.Docker的基本操作3.1在Windows上安装Docker3.2在Ubuntu上安装Docker3.3拉取一个pytorch的镜像3.4部署自己的项目3.5导出配置好项目的新镜像4.分享新镜像4.1将镜像导出为tar分享给他人4.2或者将镜像推送到云仓库5.使用新镜像6.跨平台造成nvidia-smi不可用的问题6.1确认是该问题6.2win2linux问题如何解决?6.2.1手动创建软链接6.2.2使用Dockfile自动完成6.3linux2win问题如何解决?6.3.1在WSL使用时手动删除软链接

C/C++开发,linux下OpenCV+gcc+cmake编译环境搭建

目录一、源码下载二、源码编译       2.1OpenCV源码下载       2.2cmake安装(非必要)        2.3opencv安装依赖及支持模块查看       2.4安装pkgconfig包       2.5安装opencv依赖包       2.6真正安装opencv包开始       2.7opencv环境路径配置三、案例测试       3.1案例设计       3.2编译测试一、源码下载       opencv可以在官网(Courses-OpenCV)、github、gitee下载源码编译自己所需要的特定功能的库,也可以在SourceForge获得已经编译好

【MacOS】MacBook使用本机m1芯片GPU训练的方法(mps替代cuda)

记录:对于tensorflow环境配置,即使替换了M1适配的anaconda,使用苹果官方适配m1的tensorflow安装命令,仍旧出现各种问题,可见现在的M1版anaconda还是存在很大问题。所以在屡次不服气的碰壁下我还是改用了miniforge3…真香!so,建议使用miniforge3管理,miniforge3可以理解成miniconda/annoconda的社区版,提供了更稳定的对M1芯片的支持。使用miniforge3可成功安装支持m1版的tensorflow及pytorchMPS介绍(MacM1芯片为了追求高性能和节能,在底层设计上使用的是一种叫做arm架构的精简指令集,不同于

opencv4.7.0 win10 源码编译 vs2019 cmake

步骤:①编译opencv源码;注意几个下载内容;根据cmakedownloadlog.txt中的说明②生成opencv.sln,先使用ALL_BUILD生成③然后对install工程进行生成④使用:离线使用,opencv文件夹install的includelibbin等复制到当前工程下的文件夹;然后配置属性  配置属性时注意一下路径,工程属性为.vcxproj文件所在路径;去找相对路径时,其基础路径不一样,注意。⑤编译成功,debug调试;成功 下载opencv&opencv-contrib4.7.0源码;注意下载地址https://github.com/opencv/opencv/relea

VSCODE+MSVC+CMAKE配置实践入门:简单编写EXE、LIB和DLL

目录EXE:HelloWorld设置运行环境 编写&运行免设置运行环境的方法LIB:加法函数AddC语言LIB编译:命令行/task测试Add.libDLL:乘法函数MulC语言DLL 编译DLL测试Mul.dll生成预编译文件使用预编译文件CMAKE安装CMAKE使用CMAKE        像VS这样的IDE帮我们包办了很多的事情,同时把很多的配置参数有序、图形化地展现给我们。但VSCODE这样的轻量级IDE省去了很多这样的东西,这给了程序员巨大的灵活性,让程序员可以自定义这些被包办的事情(当然有时候又非常繁琐)。同时VSCODE通过另一种方式来简化流程,即各种插件,当然插件也经常需要进行

【stable-diffusion】4090显卡下dreambooth、lora、sd模型微调的GUI环境安装(cuda驱动、pytorch、xformer)

相关博文stable-diffusion-webui的基础功能手动安装,了解代码结构、依赖、模型出处安装成功结果主要参考cuda11.7下载-https://developer.nvidia.com/cuda-toolkit-archivecudnn8.6for11.x:https://developer.nvidia.com/rdp/cudnn-archivedreambooth\lora训练环境:最原始的命令端https://github.com/kohya-ss/sd-scriptsGUI端口https://github.com/bmaltais/kohya_ss环境安装参考:win11

cmake构建googletest的单元测试(外部仓库引入)

这段时间看了些cmake构建的一些规则,正巧项目中需要用到单元测试,这里就用cmake构建googletest框架(单元测试)来进行测试。正好也复习一下cmake构建规则。这里进行cmake构建的时候采用的是引入本地第三方库的方式进行构建,一般常规构建大都采用将第三方库源文件fetch到本地项目的third_party目录下进行整体项目的引入构建。我这里采用先将第三方源码编译安装后,引入到本地需要的项目中去的方式构建。首先,这里先下载googletest的源代码,这里采用的是1.10.0版本:wgethttps://github.com/google/googletest/archive/re