CUDA实践指南(十九)

简介:

本地内存:
本地内存是如此命名的,因为它的范围对于线程来说是本地的,而不是因为它的物理位置。事实上,本地内存是片外的。因此,访问本地内存与访问全局内存一样昂贵。换句话说,名称中的术语“本地”并不意味着访问速度更快。
本地内存仅用于保存自动变量。这是由nvcc编译器在确定没有足够的寄存器空间来保存变量时完成的。可能放置在本地内存中的自动变量是大型结构或数组,会占用太多的寄存器空间,而编译器确定的数组可能会动态编制索引。
检查PTX汇编代码(通过使用-ptx或-keep命令行选项编译到nvcc获得)显示在第一个编译阶段期间变量是否已放置在本地内存中。如果有,它将使用.local助记符进行声明并使用ld.local和st.local助记符进行访问。如果没有,则后续编译阶段可能仍然会作出其他决定,如果他们发现变量为目标架构消耗太多寄存器空间。没有办法针对特定变量检查这一点,但编译器在使用--ptxas-options = -v选项运行时报告每个内核的本地内存使用情况(lmem)。
纹理内存:
只读纹理内存空间被缓存。 因此,纹理读取只需要在高速缓存未命中时读取一个器件存储器; 否则,它只花费一次从纹理缓存中读取数据。 纹理缓存针对2D空间局部性进行了优化,因此读取贴近在一起的纹理地址的相同变形的线程将获得最佳性能。 纹理内存也被设计用于具有恒定延迟的流式抓取; 也就是说,缓存命中减少了DRAM带宽需求,但不能提取延迟。 在某些寻址情况下,通过纹理读取读取设备存储器可能是从全局或常量存储器读取设备存储器的有利替代方案。
其他纹理功能:
如果使用tex1D(),tex2D()或tex3D()而不是tex1Dfetch()来提取纹理,则硬件提供了其他功能,这些功能可能对图像处理等应用程序有用,如表4所示。
1

在内核调用中,纹理高速缓存不会与全局内存写入保持一致,因此从同一内核调用中通过全局存储器写入的地址获取的纹理会返回未定义的数据。 也就是说,如果该位置已被先前的内核调用或内存副本更新,则线程可以安全地通过纹理读取内存位置,但如果先前已由相同内核调用中的相同线程或另一线程更新,则线程可以安全地读取内存位置。

目录
相关文章
|
安全 数据安全/隐私保护
什么是受 DRM 保护的内容以及如何删除 DRM 保护
当涉及到数字媒体世界中的内容时,您当然需要借助 DRM(数字版权管理)技术来确保您的创作或内容的安全和保护。让我们简要了解一下什么是受 DRM 保护的内容以及如何删除 DRM 保护。
|
JSON JavaScript 前端开发
Controller 层编码规范
Controller 层编码规范
|
消息中间件 JavaScript 小程序
7 种提升 Spring Boot 吞吐量神技!
7 种提升 Spring Boot 吞吐量神技!
|
18天前
|
人工智能 自然语言处理 文字识别
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
Qwen3.7-Max是阿里云百炼面向智能体时代推出的新一代旗舰模型,对标GPT-5.5、Claude Opus 4.7等闭源旗舰。该模型支持百万级token上下文窗口,具备顶级推理能力、多模态搜索与视觉理解增强、流式输出低延迟响应等核心优势,覆盖编程、办公、长周期自主执行等复杂场景。同时支持OpenAI接口兼容,便于系统快速迁移。用户可通过Token Plan团队或节省计划等订阅方式灵活调用,适合企业级高要求场景使用。
6837 30
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
|
3天前
|
数据采集 人工智能 前端开发
让 Coding Agent 从黑盒到透明:阿里云 Agent 观测审计数据采集实践
AI Agent 规模化落地带来执行黑盒、行为难追溯、成本难度量三大难题。阿里云基于 OTel 标准,面向 Coding Agent、个人通用助理和框架型 Agent,推出 LoongSuite Pilot、插件及探针等无侵入采集方案,让 Agent 实现可看见、可分析、可审计、可治理。
605 138
|
3天前
|
人工智能 弹性计算 运维
阿里云发布堡垒机智能运维Agent,运维交互进入自然语言新时代
支持自然语言运维,提升效率与安全双保障。
1145 0
|
10天前
|
人工智能 安全 定位技术
CodeGraph深度解析 让Claude Code工具调用直降七成的核心原理与实操教程
如今以Claude Code为代表的AI编程智能体已经成为开发者日常编码、项目重构、漏洞修复的必备工具。但在长期使用过程中,几乎所有开发者都会遇到同一个明显痛点:AI虽然具备强大的代码生成与分析能力,却常常陷入盲目探索的循环中。
1173 1
|
13天前
|
存储 定位技术 数据库
CodeGraph 如何让 Claude Code减少 7 成工具调用?
CodeGraph 为 Coding Agent 提供本地代码知识图谱,把函数、类、调用链和框架路由提前整理成“项目地图”,减少盲目搜索和文件读取。它不是新 Agent,而是上下文基础设施,让 Agent 更快找到正确代码路径,平均减少 7 成工具调用。
1273 3