03 2025 档案

摘要:AMD CDNA介绍 AMD CDNA处理器采用并行微架构,旨在为通用数据并行应用提供一个出色的平台。需要高带宽或计算密集型的数据密集型应用程序,这是在AMD CDNA处理器上运行的候选者。 AMD CDNA生成系列处理器的框图,如图5-10所示。 图5-10 AMD CDNA生成系列处理器的框图 阅读全文
posted @ 2025-03-31 04:34 吴建明wujianming 阅读(171) 评论(0) 推荐(0)
摘要:AMD Instinct™MI300系列微架构 AMD Instinct MI300系列加速器基于AMD CDNA 3架构,旨在为HPC、人工智能(AI)和机器学习(ML)工作负载提供领先性能。AMD Instinct MI300系列加速器非常适合极端的可扩展性和计算性能,可以在单个服务器到世界上最 阅读全文
posted @ 2025-03-31 04:29 吴建明wujianming 阅读(210) 评论(0) 推荐(0)
摘要:在Eager模式下对Llama 2 7B模型进行性能评估 指定--compile none以使用Eager模式。 1)--compile:设置为none以使用Eager模式 2)--profile:启用torch.profiler的跟踪功能 3)--checkpoint_path:检查点路径 4)- 阅读全文
posted @ 2025-03-31 04:18 吴建明wujianming 阅读(46) 评论(0) 推荐(0)
摘要:使用 torch.compile 加速视觉Transformer 视觉Transformer(ViT)是一个类似 BERT的transformer编码器模型,在大规模的图像集合上,使用有监督方式进行了预训练,就是在分辨率为 224×224 像素的 ImageNet-21k 数据集上预训练的。以下是如 阅读全文
posted @ 2025-03-31 04:10 吴建明wujianming 阅读(107) 评论(0) 推荐(0)
摘要:GPU到GPU通信选项技术 将讨论使用AMD Instinct™MI250和AMD InstinctTM MI250X GPU的系统中的GPU到GPU通信选项。每个MI250(X)GPU由两个图形计算芯片(GCD)组成。如图4-20所示,显示了具有4个MI250 GPU(8个GCD)的节点的示意图。 阅读全文
posted @ 2025-03-31 04:03 吴建明wujianming 阅读(64) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-31 04:00 吴建明wujianming 阅读(20) 评论(0) 推荐(0)
摘要:3. 步骤3:检查图像和文本 将COCO数据集中的8幅样本图像及其文本描述输入模型,并比较相应特征之间的相似性。 import os import matplotlib.pyplot as plt from PIL import Image # 使用COCO数据集中的图像及其文本描述 image_u 阅读全文
posted @ 2025-03-30 04:17 吴建明wujianming 阅读(23) 评论(0) 推荐(0)
摘要:AMD GPU上对比语言图像预训练(CLIP)模型的交互 3.1.1 介绍 对比语言图像预训练(CLIP)是一种连接视觉和自然语言的多模态深度学习模型。它是在OpenAI的论文从自然语言监督中学习可转移的视觉模型(2021)中介绍的,并在大量(4亿)图像字幕对的网络抓取数据上进行了对比训练(这是最早 阅读全文
posted @ 2025-03-30 04:12 吴建明wujianming 阅读(46) 评论(0) 推荐(0)
摘要:Radeon GPU上使用ROCm一些技术点 1. 使用最新的高端AMD Radeon™7000系列GPU,将桌面变成机器学习平台 AMD已扩展了对RDNA™3 GPU上机器学习开发的支持,该GPU具有Radeon™软件,适用于Linux 24.10.3和ROCm™6.1.3! 使用PyTorch、 阅读全文
posted @ 2025-03-30 04:08 吴建明wujianming 阅读(105) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-30 04:01 吴建明wujianming 阅读(14) 评论(0) 推荐(0)
摘要:3. ELLPACK 内核 ELLPACK SpMV实现沿行并行计算。由于数据已被重新排序为以列为主存储,因此沿ELLPACK数据连续行的内存访问被合并。在下面显示的实现中,假设输入cols和vals数组已经转换为ELLPACK格式。这种格式的一个关键部分是元数据参数,即每行非零的最大数量,它也作为 阅读全文
posted @ 2025-03-29 06:36 吴建明wujianming 阅读(37) 评论(0) 推荐(0)
摘要:GPU内核实现 以下是基于CSR和ELLPACK格式的一些标准SpMV实现。 1. 标量CSR内核 GPU加速SpMV的最简单实现之一是标量内核方法。标量内核分配一个线程来处理SpMV中的每个稀疏点积。稀疏点积由每个线程以顺序方式处理,从而消除了对需要共享内存和/或扭曲级别降低的更高级技术的需求。以 阅读全文
posted @ 2025-03-29 06:33 吴建明wujianming 阅读(20) 评论(0) 推荐(0)
摘要:稀疏矩阵向量乘法介绍 稀疏矩阵向量乘法(SpMV)是每个隐式稀疏线性代数求解器。从简单的 Krylov 算法到 multigrid 的算法性能方法在很大程度上取决于 SpMV 实现的速度。因为 SpMV 具有非常低的算术强度,定义为浮点操作数,则实现速度受内存带宽。最大化内存带宽的实现将实现卓越的性 阅读全文
posted @ 2025-03-29 05:37 吴建明wujianming 阅读(94) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-29 05:12 吴建明wujianming 阅读(54) 评论(0) 推荐(0)
摘要:节点级架构 MI300系列节点级架构,显示了8个完全互连的MI300X OAM模块,通过重定时器和HGX连接器连接到(可选)PCIEe交换机。 如图5-9所示,显示了具有双插槽配置的AMD EPYC处理器和八个AMD Instinct MI300X加速器的系统的节点级架构。MI300X OAM通过P 阅读全文
posted @ 2025-03-23 06:33 吴建明wujianming 阅读(46) 评论(0) 推荐(0)
摘要:AMD Instinct™MI300系列微架构 AMD Instinct MI300系列加速器基于AMD CDNA 3架构,旨在为HPC、人工智能(AI)和机器学习(ML)工作负载提供领先性能。AMD Instinct MI300系列加速器非常适合极端的可扩展性和计算性能,可以在单个服务器到世界上最 阅读全文
posted @ 2025-03-23 06:29 吴建明wujianming 阅读(122) 评论(0) 推荐(0)
摘要:GPU到GPU通信选项 将讨论使用AMD Instinct™MI250和AMD InstinctTM MI250X GPU的系统中的GPU到GPU通信选项。每个MI250(X)GPU由两个图形计算芯片(GCD)组成。如图4-20所示,显示了具有4个MI250 GPU(8个GCD)的节点的示意图。每个 阅读全文
posted @ 2025-03-23 06:22 吴建明wujianming 阅读(52) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-23 06:19 吴建明wujianming 阅读(40) 评论(0) 推荐(0)
摘要:有限差分法——拉普拉斯第4部分 提出了拉普拉斯算子有限差分法的HIP实现,并应用了四种不同的优化。在这些代码修改过程中,观察到由于全局内存的总取数减少,性能得到了逐步提高。然后,应用了进一步的优化,以在512×512×512上达到预期的性能目标MI250X GPU的单个GCD上的512个点网格。下面 阅读全文
posted @ 2025-03-21 04:19 吴建明wujianming 阅读(39) 评论(0) 推荐(0)
摘要:加速 PyTorch 模型介绍 PyTorch 2.0 引入了一个名为*torch.compile()*的工具,可以极大地加速 PyTorch 代码和模型。通过将 PyTorch 代码转换为高度优化的内核,torch.compile 在现有代码库上进行最小化修改即可提供显著的性能提升。此功能允许精确 阅读全文
posted @ 2025-03-21 04:10 吴建明wujianming 阅读(214) 评论(0) 推荐(0)
摘要:ResNet-152 模型在渴望模式下的性能评估 为了预热 GPU,在进行 20 次额外迭代以获取模型的平均推理时间之前,先运行 ResNet-152 模型 10 次。 n_warmup = 10 n_test = 20 dtype = torch.bfloat16 inference_time=[ 阅读全文
posted @ 2025-03-21 04:04 吴建明wujianming 阅读(84) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-21 03:58 吴建明wujianming 阅读(18) 评论(0) 推荐(0)
摘要:加速 PyTorch 模型介绍 PyTorch 2.0 引入了一个名为*torch.compile()*的工具,可以极大地加速 PyTorch 代码和模型。通过将 PyTorch 代码转换为高度优化的内核,torch.compile 在现有代码库上进行最小化修改即可提供显著的性能提升。此功能允许精确 阅读全文
posted @ 2025-03-20 06:19 吴建明wujianming 阅读(141) 评论(0) 推荐(0)
摘要:数据布局 3D数据的布局使得i方向上的网格点在内存中是连续的,而k方向上的栅格点则以nx*ny为步长。此映射以宏为例: #define u(i, j, k) h_u[(i) + (j) * nx + (k) * nx * ny] 其中i、j和k周围的括号确保了 等表达式的正确展开。在网格点位置应用的 阅读全文
posted @ 2025-03-20 06:12 吴建明wujianming 阅读(72) 评论(0) 推荐(0)
摘要:AMD ROCm 软件 ROCm是一个开源堆栈,主要由开源软件组成,专为图形处理单元(GPU)计算而设计。ROCm由一系列驱动程序、开发工具和API组成,使GPU编程能够从低级内核到最终用户应用程序。 使用ROCm,可以自定义GPU软件以满足特定需求。可以在免费、开源、集成和安全的软件生态系统中开发 阅读全文
posted @ 2025-03-20 06:09 吴建明wujianming 阅读(312) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-20 06:06 吴建明wujianming 阅读(14) 评论(0) 推荐(0)
摘要:Groq软件定义的横向扩展张量流多处理器-从芯片到系统架构概述 1.大纲 1)张量流处理器(TSP)背景 2)软件定义的硬件和确定性执行 3)TSP微架构 4)系统封装、拓扑、路由和流控制 5)小结 2.软件定义方法 1)软硬件协同设计并不是什么新鲜事 2)重新检查硬件软件接口 ① 静态-动态接口: 阅读全文
posted @ 2025-03-19 04:23 吴建明wujianming 阅读(55) 评论(0) 推荐(0)
摘要:Radeon GPU上使用ROCm一些技术点 1. 使用最新的高端AMD Radeon™7000系列GPU,将桌面变成机器学习平台 AMD已扩展了对RDNA™3 GPU上机器学习开发的支持,该GPU具有Radeon™软件,适用于Linux 24.10.3和ROCm™6.1.3! 使用PyTorch、 阅读全文
posted @ 2025-03-19 04:17 吴建明wujianming 阅读(243) 评论(0) 推荐(0)
摘要:与Julia生态系统集成 AMDGPU.jl将ROCm库与Julia生态系统集成在一起,提供统一的体验,使用AMDGPU.j、CPU或其他加速器支持的阵列几乎没有区别。 例如,rocBLAS用于常见的BLAS操作,Julia的算子为了提高效率而分派给他们。 julia> a = AMDGPU.ran 阅读全文
posted @ 2025-03-19 04:10 吴建明wujianming 阅读(46) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-19 04:03 吴建明wujianming 阅读(15) 评论(0) 推荐(0)
摘要:示例3–V_MFMA_F64_4x4x4F64 考虑V_MFMA_F64_4x4x4F64指令,它计算大小为4×4的四个独立矩阵块的MFMA。执行的操作是 ,其中 , , 和 都是大小为4×4元素的矩阵,N=0,1,2,3。 下面的两张图显示了 1)输入参数A和B的四个分量的大小和形状,如图4-18 阅读全文
posted @ 2025-03-18 03:58 吴建明wujianming 阅读(135) 评论(0) 推荐(0)
摘要:ROCm技术小结与回顾 在这一部分中,首先检查了Kernel 5在各种AMD GPU和问题大小上的性能,并注意到当网格超过一定大小阈值时,性能似乎会急剧下降。通过实验确定,LLC的大小是大型xy平面问题性能的限制因素。提出了两种不同的解决方法来规避缓存大小的问题,这两种方法都只需要修改几行代码。 在 阅读全文
posted @ 2025-03-18 03:51 吴建明wujianming 阅读(139) 评论(0) 推荐(0)
摘要:有限差分法——拉普拉斯第4部分 提出了拉普拉斯算子有限差分法的HIP实现,并应用了四种不同的优化。在这些代码修改过程中,观察到由于全局内存的总取数减少,性能得到了逐步提高。然后,应用了进一步的优化,以在512×512×512上达到预期的性能目标MI250X GPU的单个GCD上的512个点网格。下面 阅读全文
posted @ 2025-03-18 03:42 吴建明wujianming 阅读(48) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-18 03:36 吴建明wujianming 阅读(24) 评论(0) 推荐(0)
摘要:什么是异构计算(HC)API? 1. 克隆HCC源树 # 自动获取所有子模块 git clone --recursive -b clang_tot_upgrade https://github.com/RadeonOpenCompute/hcc.git[1] 创建一个构建目录,并在该目录中运行cma 阅读全文
posted @ 2025-03-17 03:59 吴建明wujianming 阅读(32) 评论(0) 推荐(0)
摘要:3.2 ROCm技术解析 ROCm是第一个用于GPU计算的开源HPC/Hyperscale级平台,也是独立于编程语言的。将UNIX的选择哲学、极简主义和模块化软件开发引入GPU计算。新的ROCm基础允许为应用程序选择甚至开发工具和语言运行时。 1)[n1] ROCm是为规模而构建的;它支持通过RDM 阅读全文
posted @ 2025-03-17 03:56 吴建明wujianming 阅读(457) 评论(0) 推荐(0)
摘要:AMD GPU上对比语言图像预训练(CLIP)模型的交互 3.1.1 介绍 对比语言图像预训练(CLIP)是一种连接视觉和自然语言的多模态深度学习模型。它是在OpenAI的论文从自然语言监督中学习可转移的视觉模型(2021)中介绍的,并在大量(4亿)图像字幕对的网络抓取数据上进行了对比训练(这是最早 阅读全文
posted @ 2025-03-17 03:53 吴建明wujianming 阅读(74) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-17 03:47 吴建明wujianming 阅读(12) 评论(0) 推荐(0)
摘要:进阶算法 基础算法无法解决中断恢复的问题,即假如有两个写寄存器的操作,指令1,指令2,可能乱序执行时指令2的结果已经将写回了寄存器,但是指令1还未执行,此时发生中断后,从指令1重新开始执行,就会重新进行两次写入,将会发生错误。 只要保证后面指令修改机器状态时, 前面的指令都已经不会发生中断即可。很自 阅读全文
posted @ 2025-03-16 04:11 吴建明wujianming 阅读(34) 评论(0) 推荐(0)
摘要:指令集并行与开发 Tomasulo算法 1. 概念 Tomasulo 方法是一种用于在超标量处理器中执行指令并处理数据相关(数据相关性)的方法。它主要通过对指令进行乱序执行和动态调度来提高指令级并行性。 可以通过寄存器重命名消除 WAR 和 WAW 相关(通过保留站号间接实现重命名) 也可以通过总线 阅读全文
posted @ 2025-03-16 04:02 吴建明wujianming 阅读(118) 评论(0) 推荐(0)
摘要:存储器层次结构概述 1. Cache的作用 Cache结构与作用,如图2-5所示。 图2-5 Cache结构与作用 介绍一下Cache具有特征。Cache没有程序上的意义,只是为了降低访存延迟;处理器访问Cache和访问存储器使用相同的地址。 Tag存储cache块在主存中的首地址(cache每个字 阅读全文
posted @ 2025-03-16 03:50 吴建明wujianming 阅读(52) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-16 03:42 吴建明wujianming 阅读(10) 评论(0) 推荐(0)
摘要:简单谈谈Google TPUv6 根据Google TPU第六代的数据做了一些性能数据的对比,需要注意的是TPUv6当前应该是一个用于训推一体的单Die的版本,用于训练的V6p双Die版本应该会后期再发布. 需要注意的是在国内外都开始卷大模型推理价格的时候, TPU这样的东西对于提高ROI非常有帮助 阅读全文
posted @ 2025-03-15 03:39 吴建明wujianming 阅读(163) 评论(0) 推荐(0)
摘要:8. HPU(Holographic Processing Unit) 全息处理器。微软HoloLens是世界上首台独立的全息计算机设备,能够提供高清晰度的全息影像,其秘密在于HoloLens搭载的Holographic Processing Unit(全息处理单元,简称HPU),这是一款定制芯片, 阅读全文
posted @ 2025-03-15 03:32 吴建明wujianming 阅读(252) 评论(0) 推荐(0)
摘要:NPU 是什么芯片?AI芯片都有哪些? NPU就是CPU功能细化的产物,就像当年只有CPU一样,发现处理一些简单的重复的任务,特别像游戏这种大量作图时只能用软件算法,效率及其低下,所以发展处的加速卡,发展成为GPU,现在处理一些ai学习算法时都是用GPU软件模拟,效率低下,功耗大,所以又把这部分功能 阅读全文
posted @ 2025-03-15 03:24 吴建明wujianming 阅读(120) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-15 03:19 吴建明wujianming 阅读(18) 评论(0) 推荐(0)
摘要:SPIR-V生态系统 SPIR-V生态系统,如图1-42所示。 图1-42 SPIR-V生态系统 4.1.2 OpenVX路线图 OpenVX路线图,如图1-43所示。 图1-43 OpenVX路线图 4.1.3 OpenVX跨供应商视觉与推理 基于图形的高级抽象实现可移植、高效的视觉处理。 1)处 阅读全文
posted @ 2025-03-08 11:14 吴建明wujianming 阅读(19) 评论(0) 推荐(0)
摘要:OpenCV的优化 OpenCV的优化主要涉及提高代码执行效率,‌减少计算时间和内存使用,‌以及利用并行计算和GPU加速等技术。‌ 首先,‌为了测量和优化代码性能,‌可以使用OpenCV提供的函数如cv.getTickCount和cv.getTickFrequency来测量代码执行时间。‌此外,‌P 阅读全文
posted @ 2025-03-08 11:10 吴建明wujianming 阅读(98) 评论(0) 推荐(0)
摘要:OpenVX代码优化裁减简介 在OpenVX中,裁减(Reduction)是一种操作,它对数组或图像中的元素执行聚合操作。这里的“裁减”是指将大型数组或图像减少到单一数值的过程。 OpenVX提供了几种不同的裁减操作,包括求和(Summation)、平均(Average)、最小值(Minimum)、 阅读全文
posted @ 2025-03-08 11:07 吴建明wujianming 阅读(25) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-08 11:02 吴建明wujianming 阅读(15) 评论(0) 推荐(0)
摘要:框架:节点回调 允许客户端在特定节点完成后,接收回调执行。 不能保证在Node完成后立即调用回调。回调旨在使用vx_action_e返回值,为视觉图创建简单的早期退出条件。下面是设置回调的示例: vx_graph graph = vxCreateGraph(context); status = vx 阅读全文
posted @ 2025-03-06 19:44 吴建明wujianming 阅读(35) 评论(0) 推荐(0)
摘要:枚举器 VX_KERNEL_COLOR_CONVERT- 色彩空间转换内核。 转换基于图像中的vx_df_image_e代码。 也可以参考: 颜色转换 VX_KERNEL_CHANNEL_EXTRACT- 通用通道提取内核。 该内核可以从交错或半平面、平面、亚采样平面图像中,去除单独的颜色通道。客户 阅读全文
posted @ 2025-03-06 19:37 吴建明wujianming 阅读(11) 评论(0) 推荐(0)
摘要:对象:图形 定义 Graph 对象接口。 以有向(仅单向)非循环(不循环)方式连接的一组节点。一个Graph可能具有未连接到同一Graph中其他的节点集。参见图形形式。图3-1显示了Graph状态转换图。参见vx_graph_state_e。 图 3-1 图形状态转换 类型定义 vx_graph 枚 阅读全文
posted @ 2025-03-06 19:32 吴建明wujianming 阅读(24) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-06 19:28 吴建明wujianming 阅读(26) 评论(0) 推荐(0)
摘要:OpenVX视觉技术介绍 这些是支持的基本视觉功能。这些函数被选为更大可能池的子集,符合以下条件的函数: 1)适用于加速硬件 2)非常常见的用法 3)无产权负担 模块 视觉功能模块算法,见表2-4。 绝对差值 算术加法 算术减法 双边滤波器 按位与 逐位异或 逐位包含或 按位取反 盒式滤波器 Can 阅读全文
posted @ 2025-03-05 21:25 吴建明wujianming 阅读(25) 评论(0) 推荐(0)
摘要:并发数据对象访问 只有当所有访问都是只读的时,才允许使用映射、复制、读取功能,访问OpenVX数据对象,同时执行正在访问相同数据对象的图形。对于Map,Copy具有只读访问模式,而对于图中的节点,则仅将该数据对象作为输入参数。在所有其他情况下,包括写入或读写模式和写入访问功能,以及将数据对象作为输出 阅读全文
posted @ 2025-03-05 21:23 吴建明wujianming 阅读(26) 评论(0) 推荐(0)
摘要:主机内存数据对象访问模式 对于从OpenVX中检索到的2D性质的对象,例如vx_image、vx_matrix和vx_convolution,主机侧访问这些存储器区域的方式是明确定义的。OpenVX使用行主存储器(即列中的每个单元都是与其行相邻单元相邻的存储器)。二维对象总是以宽度(列)×高度(行) 阅读全文
posted @ 2025-03-05 21:22 吴建明wujianming 阅读(52) 评论(0) 推荐(0)
摘要:6本书推荐《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理·设计·应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》 由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《MLIR编译器原理与实践》已经出版,京东、淘宝天 阅读全文
posted @ 2025-03-05 21:20 吴建明wujianming 阅读(20) 评论(0) 推荐(0)
摘要:生命周期 1. OpenVX 上下文生命周期 OpenVX上下文的生命周期非常简单,如图2-7所示。 图2-7.OpenVX 上下文的生命周期模型 2.图形生命周期 如图2-8所示,OpenVX在图形生命周期中,有以下四个主要阶段。 1)构造:图形通过vxCreateGraph创建,节点通过数据对象 阅读全文
posted @ 2025-03-05 21:16 吴建明wujianming 阅读(17) 评论(0) 推荐(0)
摘要:基本视觉功能 1.输入输出表 OpenVX附带了一组标准的或基本的视觉功能。表2-2列出了支持的视觉功能集、输入类型(见表2-2)和输出类型(见表2-3),以及支持的OpenVX版本。 表2-2 OpenVX视觉功能输入参数 视觉功能 U1 S8 U8 U16 S16 U32 F32 颜色 其他 A 阅读全文
posted @ 2025-03-05 21:10 吴建明wujianming 阅读(15) 评论(0) 推荐(0)
摘要:用户内核 OpenVX支持客户端定义函数的概念,这些函数应作为节点,从图形内部或图形内部执行。这种模式的目的是: 1)进一步利用OpenVX平台内节点的独立操作。 2)允许在OpenVX的其他地方重用组件化功能。 3)将严格的验证要求正式化(即合同编程)。 如图2-6所示,要执行客户端提供的函数,图 阅读全文
posted @ 2025-03-05 21:06 吴建明wujianming 阅读(19) 评论(0) 推荐(0)
摘要:节点执行独立性 在如图2-5所示例中,客户端根据输入图像、梯度幅度和梯度相位。OpenVX并不要求并行运行,但可以由OpenVX供应商实现。 图2-5 具有一些独立节点的简单图形。 构造这种图形的代码,如下所示。 vx_context context = vxCreateContext(); vx_ 阅读全文
posted @ 2025-03-05 21:01 吴建明wujianming 阅读(7) 评论(0) 推荐(0)
摘要:OpenVX虚拟数据对象 OpenVX中的图形依赖于数据对象,并将节点链接在一起。当OpenVX的客户端知道不需要访问这些中间数据对象时,可能会被创建为虚拟的。虚拟数据对象可以以与非虚拟数据对象相同的方式,将图的节点链接在一起;然而,虚拟数据对象在以下方面不同。 1)不可访问 如果从Graph外部角 阅读全文
posted @ 2025-03-05 20:09 吴建明wujianming 阅读(24) 评论(0) 推荐(0)