OpenCL,OpenGL编译
OpenCL,OpenGL编译
TVM已经支持多个硬件后端:CPU,GPU,移动设备等......添加了另一个后端:OpenGL / WebGL。
OpenGL / WebGL能够在没有安装CUDA的环境中利用GPU。目前,这是在浏览器中使用GPU的唯一方式。
这个新的后端允许以一下3种方式使用OpenGL / WebGL:
- 本地OpenGL:可以将深度学习模型编译成OpenGL,并直接在本地机器上运行,完全只使用Python。
- 带有RPC的WebGL:可以将深度学习模型编译为WebGL,作为一个共享库导出,并带有Java主机代码和WebGL设备代码。然后,可以通过RPC将这个共享库部署到TVM Java运行时系统,在浏览器内运行。
- 带有静态库的WebGL:可以将深度学习模型编译为WebGL,与TVM Java运行时系统连接,导出整个包。然后,可以在浏览器的网页中运行模型,不需要依赖项。详细流程如图1所示。
TVM Compiler
TVM中的操作内核是自动编译的,不是人工编译的。如图2所示,TVM使用统一的AST定义内核,编译为不同平台上的代码。
- 不需要编写大量附加代码,就可以将现有模型部署。Relay / TVM模型定义对于所有target都是相同的,只需将其编译到新的target。
- 如果要添加新的操作系统内核,只需要在TVM中定义一次,不用为每个target实现一次。不需要知道如何编写代码添加新的操作系统内核。
CPU(LLVM):模型被编译为LLVM IR和JIT’ed,完全在CPU上运行。
OpenCL:模型被编译成OpenCL。还有一些glue code被编译到LLVM,负责设置和启动OpenCL内核。然后在本地机器上运行。
OpenGL:与OpenCL相同,但编译为OpenGL。
参考链接:
https://www.sohu.com/a/225439682_473283
人工智能芯片与自动驾驶
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)