CUDA实践指南(二十九)

简介:

额外的硬件数据:
计算能力没有描述某些硬件功能。 例如,主机和设备之间的内核执行与异步数据传输重叠的能力在大多数但不是所有具有计算能力1.1的GPU上均可用。 在这种情况下,请调用cudaGetDeviceProperties()来确定设备是否具备某种功能。 例如,设备属性结构的asyncEngineCount字段指示重叠的内核执行和数据传输是否可能(并且,如果是的话,可以有多少并发传输是可能的); 同样,canMapHostMemory字段指示是否可以执行零拷贝数据传输。
CUDA运行时和驱动程序API版本:
CUDA Driver API和CUDA Runtime是CUDA的两种编程接口。 它们的版本号使开发人员能够检查与这些API相关的功能,并确定应用程序是否需要比当前安装的版本更新(更高版本)的版本。 这很重要,因为CUDA驱动程序API向后兼容,但不兼容,这意味着针对特定版本的Driver API编译的应用程序,插件和库(包括CUDA Runtime)将在后续(稍后) 司机版本。 但是,针对特定版本的Driver API编译的应用程序,插件和库(包括CUDA Runtime)可能无法在早期版本的驱动程序上使用,如图13所示。
1

计算能力目标:
如果对运行时会出现的硬件的计算能力产生怀疑,最好假定计算能力为2.0,如CUDA C编程指南关于技术和功能规格部分所定义的那样。
要定位特定版本的NVIDIA硬件和CUDA软件,请使用nvcc的-arch,-code和-gencode选项。 例如,使用warp shuffle操作的代码必须使用-arch = sm_30(或更高的计算能力)进行编译。
CUDA Runtime:
CUDA软件环境的主机运行时组件只能由主机功能使用。 它提供了以下功能:

  • 设备管理
  • 上下文管理
  • 内存管理
  • 代码模块管理
  • 执行控制
  • 纹理参考管理
  • 与OpenGL和Direct3D的互操作性

与较低级别的CUDA驱动程序API相比,CUDA Runtime通过提供隐式初始化,上下文管理和设备代码模块管理极大地简化了设备管理。 由nvcc生成的C / C ++主机代码利用CUDA运行时,所以链接到该代码的应用程序将取决于CUDA运行时; 同样,使用cuBLAS,cuFFT和其他CUDA工具包库的代码也将取决于这些库在内部使用的CUDA运行时。
组成CUDA运行时API的功能在CUDA工具包参考手册中进行了说明。
CUDA Runtime处理内核加载并设置内核参数并在启动内核之前启动配置。 隐式驱动程序版本检查,代码初始化,CUDA上下文管理,CUDA模块管理(立方体到函数映射),内核配置和参数传递都由CUDA运行时执行。
它由两个主要部分组成:

  • C风格的函数接口(cuda_runtime_api.h)。
  • 构建在C风格函数之上的C ++式便利包装器(cuda_runtime.h)。
目录
相关文章
|
运维 Kubernetes 安全
云原生安全 — seccomp应用最佳实践
近期针对Linux内核的CVE漏洞频出,CVE-2022-0185、CVE-2022-0185、CVE-2022-0847是威胁评分较高且热度较高的几个典型漏洞,相关的POC/EXP利用代码也已经在互联网上公开披露。对于容器场景来说,攻击者的攻击路径也比较相似,都是利用unshare等高危系统调用在新的usernamespace拿到CAP_SYS_ADMIN等高权限capabilities后利用漏
3584 0
云原生安全 — seccomp应用最佳实践
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
景区博物馆最新应用:历史IP复活,移动AI数字人互动屏打造文旅爆款体验
世优波塔移动AI数字人互动屏,以高精度建模与AI大模型技术“复活”历史人物,打造可对话、会讲解、能导览的沉浸式文旅体验。通过自然语言交互、智能移动导引与多设备联动,让文物“开口说话”,让文化“活”起来,重新定义博物馆、景区与传统文化的连接方式,开启智慧文旅新纪元。
506 0
|
机器学习/深度学习 存储 人工智能
算力资源选择指南:如何匹配你的开发需求?
本文作者结合七年分布式计算经验,深入剖析算力卡与服务器的本质区别及其选型策略。从硬件架构看,算力卡专注高性能计算,如A100/H100在矩阵运算效率上提升显著,但文件读写较弱;服务器则是全能型系统,适合多任务场景。在应用场景中,算力卡适用于机器学习训练等浮点密集任务,而服务器在部署和服务支持上更具优势。成本模型显示,算力卡三年TCO更低但运维成本更高,需根据实际需求权衡。最后,作者提供选型决策树,建议根据任务类型、生态需求和负载特征选择合适方案。
548 8
|
11月前
|
存储 并行计算 算法
CUDA性能优化实战:7个步骤让并行归约算法提升10倍效率
https://avoid.overfit.cn/post/af59d0a6ce474b8fa7a8eafb2117a404
673 1
CUDA性能优化实战:7个步骤让并行归约算法提升10倍效率
|
机器学习/深度学习 计算机视觉 索引
YOLOv11改进策略【Conv和Transformer】| ECCV-2024 Histogram Transformer 直方图自注意力 适用于噪声大,图像质量低的检测任务
YOLOv11改进策略【Conv和Transformer】| ECCV-2024 Histogram Transformer 直方图自注意力 适用于噪声大,图像质量低的检测任务
635 9
YOLOv11改进策略【Conv和Transformer】| ECCV-2024 Histogram Transformer 直方图自注意力 适用于噪声大,图像质量低的检测任务
|
机器学习/深度学习 编解码 人工智能
InvSR:开源图像超分辨率生成模型,提升分辨率,修复老旧照片为超清图像
InvSR 是一个创新的图像超分辨率模型,基于扩散模型的逆过程恢复高分辨率图像。它通过深度噪声预测器和灵活的采样机制,能够高效地提升图像分辨率,适用于老旧照片修复、视频监控、医疗成像等多个领域。
3276 9
InvSR:开源图像超分辨率生成模型,提升分辨率,修复老旧照片为超清图像
|
机器学习/深度学习 人工智能 自然语言处理
AI如何预测体育比赛结果
AI预测体育比赛结果依赖于历史数据、球员表现、球队状态等多因素。通过数据收集与处理、机器学习模型(如回归分析、神经网络)、模拟与蒙特卡洛方法、实时数据分析及自然语言处理等技术,AI能识别影响比赛的关键模式,评估胜负概率,并结合统计学与优化算法不断调整预测,提升准确性。
|
Kubernetes 异构计算 容器
Kubelet之Topology Manager分析
Topology Manager是kubelet的一个组件,在kubernetes 1.16加入,而kubernetes 1.18中该feature变为beta版。本篇文档将分析Topology Manager的具体工作原理。1.为什么需要Topology Manager现代计算机的CPU架构多采用NUMA(Non-Uniform Memory Access,非统一内存)架构。NUMA就是将cpu
5276 0
|
人工智能 资源调度 物联网
diffusers SD推理加速方案的调研实践总结(2)
diffusers SD推理加速方案的调研实践总结
772 9
|
机器学习/深度学习 人工智能 监控
AI行为分析
**AI行为分析融合视觉技术,自动监测与理解人类及动物行为。在教育中,它监控课堂行为,提升教学质量;在安防领域,确保公共安全,预警异常事件;科研中,助力动物行为研究,推动神经科学探索。技术进步正拓宽其应用边界,强化安全管理与决策支持。**
792 6