芯东西3月6日消息,据外媒报道,英伟达已禁止用转译层在其他GPU上跑CUDA软件。自2021年以来,英伟达已在其在线列出的许可条款中明文禁止使用转译层在其他硬件平台上运行基于CUDA的软件。软件工程师@Longhorn发现这项“禁令”已被添加到安装CUDA 11.6及更新版本包含的最终用户许可协议(EULA)中。英伟达CUDA 11.6及更高...
国产GPU企业在发展初期,大多选择基于CUDA来开发自己的软件生态。这一策略使得他们能够较快地吸引开发者和用户,利用CUDA的现有资源,加快产品的市场接受度。然而,随着NVIDIA对CUDA转译的禁止,这些企业将不得不面对重新构建软件生态的挑战。禁转译的政策对国产GPU企业来说是一个重大打击。他们原本可以通过兼容CUDA来规避...
目前,兼容CUDA主要有两种做法:重新编译代码和使用转译层。重新编译代码虽然合规,但需要开发者对原代码进行修改和调整,工作量较大且存在风险。而使用转译层,如ZLUDA开源库等,虽然可以在非英伟达硬件上运行CUDA程序,但英伟达此次的禁令使得这种方法变得不再可行。英伟达的这一禁令对GPU行业产生了深远影响。对于那些试...
英伟达是GPU图形处理器的开山鼻祖,从软件到硬件形成大量的专利知识产权,在独属于英伟达的生态环境下,开发者想要有所作为,也只能基于英伟达的平台对大量软件进行兼容适配。不过情况正在发生改变,英伟达下“封杀令”:不准转译CUDA!国产GPU企业回应。英伟达的生态护城河 英伟达一直以来在GPU领域建立了强大的生态护城河,其...
CUDA指令转译是一个将CUDA代码转换为GPU可执行代码的过程。当你在NVIDIA GPU上运行CUDA程序时,编译器将CUDA代码转换为GPU可以执行的低级指令。这个过程涉及到许多复杂的步骤,包括预处理、编译、链接和优化等。 在CUDA编程模型中,开发者使用C/C++编写CUDA代码,然后使用NVIDIA的编译器(如nvcc)将代码编译为可执行文件。编...
英伟达在去年年底更新了CUDA11.6版本的EULA,明确禁止了在非英伟达平台上进行CUDA转译的行为。这一决定引发了行业内的争议,一些人认为英伟达应保护自身知识产权,但也有人指责其垄断市场。国内GPU企业表示遵守规定,采用重新编译代码的方式兼容CUDA,但这无疑增加了开发者的工作量,削弱了CUDA兼容性的吸引力。开放生态的...
翻译层的典型就是ZLUDA,它可以将已经编译好的CUDA程序进行实时二进制转译,让AMD/Intel的硬件能够实时运行CUDA程序。还有的转译是预先将CUDA源代码程序进行翻译后,再运行,这类的例子包括AMD的HIP/ROCm,海光的生态、昇腾的CANN生态、寒武纪的生态,以及部分国产GPU公司等。
然而,英伟达最近在CUDA的许可协议中增加了限制条款,禁止将CUDA软件转译运行在非英伟达硬件平台上,引发了关于开放与封闭之争的讨论。在AI生态博弈中,追求开放还是维护壁垒,成为各方热议的话题。英伟达的封闭之路 英伟达长期以来坚持着对CUDA生态系统的封闭与控制,这种封闭性对于确保产品质量和用户体验具有一定的积极作用...
目前,存在两种常见的兼容CUDA的做法:重新编译代码和使用转译层。其中,重新编译现有CUDA程序的做法是合规的,并且AMD和英特尔都提供了相应的工具来将CUDA程序迁移到其平台上。而禁令主要针对使用像ZLUDA开源库等转译层的做法,这被认为是在非英伟达硬件上运行CUDA程序的最简单方法。此前英特尔和AMD都曾支持过ZLUDA项目...