草庐IT

《CUDA编程:基础与实践》读书笔记(1):CUDA编程基础

1.GPU简介GPU与CPU的主要区别在于:CPU拥有少数几个快速的计算核心,而GPU拥有成百上千个不那么快速的计算核心。CPU中有更多的晶体管用于数据缓存和流程控制,而GPU中有更多的晶体管用于算数逻辑单元。所以,GPU依靠众多的计算核心来获得相对较高的并行计算性能。一块单独的GPU无法独立地完成所有计算任务,它必须在CPU的调度下才能完成特定任务,因此当我们讨论GPU计算时,其实指的是CPU+GPU的异构计算。通常将起控制作用的CPU称为主机(host),起加速作用的GPU称为设备(device),它们之间一般采用PCIe总线连接。NVIDIA公司出品的GPU中,支持CUDA(Comput

linux版本安装cuda

安装及配置过程一、下载安装CUDAToolkit1.查看操作系统版本及支持CUDA版本2.官网下载并安装对应版本CUDA3.配置环境变量4.测试CUDA安装是否成功二、下载安装cuDNN1.官网下载对应版本cuDNN一、下载安装CUDAToolkit1.查看操作系统版本及支持CUDA版本1)查看系统版本uname-a2)查看系统支持CUDA版本图中标红处说明此系统支持CUDA最高版本为:11.0,即下载CUDA时版本要控制在11.0以下nvidia-smi2.官网下载并安装对应版本CUDA1)根据系统支持版本下载对应版本的CUDAToolkit,作者此处选择CUDA10.2。官网链接2)选择所

FFmpeg在 Windows 环境编译(64位)支持h264,h265,和Intel QSV,Nvidia Cuda,AMD amf 硬件加速

目录前言一. 源码包下载1.FFmpeg源码下载2.MSYS2安装 2.1执行下面命令配置环境 2.2安装完成后将MSYS2安装路径下的mingw64/bin配置到windows环境变量中 2.3安装其他工具(默认全部安装):3.安装CMake工具 3.1将CMake加入环境变量4.下载x264,x265 4.1x264源码下载: 4.2x265源码下载(直接git):二. 开始编译1. 编译x2642. 编译x2653.编译FFmpeg三.功能验证1.x264验证2.x265验证3.FFmpeg验证四.FFmpeg支持Intel,Nvidia,AMD硬件加速1.支持IntelQSV硬件加速2

第八章 CUDA内存应用与性能优化篇(上篇)

cuda教程目录第一章指针篇第二章CUDA原理篇第三章CUDA编译器环境配置篇第四章kernel函数基础篇第五章kernel索引(index)篇第六章kenel矩阵计算实战篇第七章kenel实战强化篇第八章CUDA内存应用与性能优化篇第九章CUDA原子(atomic)实战篇第十章CUDA流(stream)实战篇第十一章CUDA的NMS算子实战篇第十二章YOLO的部署实战篇第十三章基于CUDA的YOLO部署实战篇cuda教程背景随着人工智能的发展与人才的内卷,很多企业已将深度学习算法的C++部署能力作为基本技能之一。面对诸多arm相关且资源有限的设备,往往想更好的提速,满足更高时效性,必将更多类

linux 服务器安装多版本 cuda (无 sudo 权限 非 root 用户也适用)

linux服务器安装多版本cuda(无sudo权限非root用户也适用)文章目录1.下载cudatoolkit2.下载cudnn3.安装cuda4.配置cudnn5.使用目标版本cuda6.无sudo权限与非root用户1.下载cudatoolkit下载想要版本的cudatoolkit2.下载cudnn下载对应版本cudnn3.安装cuda以cuda10.0为例#1.执行安装sudoshcuda_10.0.130_410.48_linux.run#2.一大堆协议,按q结束阅读#3.接受霸王条款accept/decline/quit:accept#4.继续Youareattemptingtoin

OpenCV - cv::Mat与unsigned char*数组或者float*数组相互转换,cv::Mat与std::vector的相互转换

1使用常规方法将cv::Mat转换为unsignedchar数组或者float数组通常情况下,在同一个opencv项目传递cv::Mat可直接通过constcv::Mat&img这种方式传递,但是如果需要进行跨语言传递,比如C++传递到C#或者C#传递到C++,那么通常这种情况下需要将cv::Mat转换为内存指针比如unsignedchar指针或者float指针进行传递。1.1cv::Mat转换为unsignedchar数组、unsignedchar数组转换为cv::Mat#include#include"opencv/cv.h"#include"opencv2/opencv.hpp"void

CV 经典主干网络 (Backbone) 系列: CSP-Darknet53

CSP-Darknet530.引言1.网络结构图1.1输入部分1.2CSP部分结构1.3输出部分2.代码实现2.1代码整体实现2.2代码各个阶段实现3.代码测试4.结论0.引言CSP-Darknet53无论是其作为CVBackbone,还是说它在别的数据集上取得极好的效果。与此同时,它与别的网络的适配能力极强。这些特点都在宣告:CSP-Darknet53的重要性。关于原理部分的内容请查看这里CV经典主干网络(Backbone)系列:CSPNet1.网络结构图具体网络结构可以参考YOLOV3详解(一):网络结构介绍中使用的工具来进行操作。具体网址和对应的权重文件下载地址如下:模型可视化工具:ht

cv2.VideoCapture使用,opencv读取摄像头,视频图像

        cv2.VideoCapture()用于读取视频,也可以用于读取摄像头图像。video=cv2.VideoCapture(0)video=cv2.VideoCapture('../videos/1.mp4')        上面的2种写法,第一种表示读取摄像头,第二种读取视频文件,返回值就是视频数据。        在读取到视频后,可以使用isOpened方法来判断视频是否能够打开,能打开返回True,不能够打开就返回False。video.isOpened()        通过read方法可以读取到每一帧的图片,这个函数返回2个值,第一个是一个布尔值,成功就返回True,第

Ubuntu下CUDA配置

Ubuntu22.04LTS一、下载官网下载CUDAToolkitArchive|NVIDIADeveloper​​​​建议下载runfile的文件格式二、安装终端执行sudochmod+xcuda_12.1.0_530.30.02_linux.runsudo./cuda_12.1.0_530.30.02_linux.run如果报错Failedtoverifygccversion.Seelogat/var/log/cuda-installer.logfordetails.sudochmod+xcuda_12.1.0_530.30.02_linux.runsudo./cuda_12.1.0_53

Linux安装CUDA

Ubuntu20.04系统安装CUDA前言一、CUDA是什么二、步骤1.先查看有没有安装CUDA在终端输入命令2.若没有,查看有没有安装显卡驱动3.查看Driver对应的CUDAversion4.[到cuda-toolki-archive](https://developer.nvidia.com/cuda-toolkit-archive),下载对应的cuda5.修改环境变量总结前言笔者最近在做深度学习和感知方面的一个学习,需要用到CUDA来加速,所以安装了CUDA,在这里总结了一下。一、CUDA是什么cuda是ComputeUnifiedDeviceArchitecture的缩写。中文叫统一