英伟达在 CUDA 12.0(以及更高版本)中停止对 32 位 CUDA 的支持之后,围绕这个平台构建的技术,比如 PhysX,也随之结束了。最近 PassMark 的一份报告显示,英伟达在新一代基于 Blackwell 架构 GPU 上放弃对 32 位 OpenCL 和 CUDA 的支持,是导致 GeForce RTX 50 系列显卡计算性能低下的一个重要原因,因为与现有测试工具和应用程序可能会存在兼容性问题。
NVIDIA GeForce RTX 5090
据 TomsHardware 报道,英伟达并不是突然选择这么做,过去几年里传统的 CUDA 支持已经通过连续的更新逐渐被淘汰。使用 32 位 CUDA 编写的程序仍然可以在 RTX 40 系列或者更早的硬件上运行,但是换到 RTX 50 系列上时,会回退到 CPU,这要比 GPU 的并行处理速度要慢得多。这有可能是软件限制,可以通过 32 位到 64 位的翻译层解决,但是不能指望英伟达会提供官方信息或者解决方案。
按照 PassMark 的说法,英伟达终止对 32 位 CUDA 兼容的决定也影响了遗留的 OpenCL 代码。虽然英伟达官方没有对此发表公告,但是普遍认为已经彻底放弃了对 32 位 OpenCL 的支持。事实上,英伟达的 OpenCL 开发人员文档仍然提供了为 32 位环境编写的代码示例,在 RTX 40 系列上仍然运行良好,不过在 RTX 50 系列就会出现错误。如果不对源代码进行必要的更改,这些过时的 OpenCL 程序应该不能在 Blackwell 架构及未来的 GPU 上运行。
虽然 PassMark 的主要性能测试与现代系统兼容,但是仍然包含几个不需要 64 位地址空间的子基准测试。为了让基准测试正确地衡量性能,PassMark 可能需要在 64 位模式下重新编译。这事情说起来容易做起来难,需要考虑 32 位环境里累积的大量问题,其中涉及海量的工作,预计要花不少时间。好消息是,过去多年里,大多数开发人员已经慢慢地迁移到 64 位代码。
超能网公众号
扫码关注我们,浏览热门硬件评测
随时查看最新天梯榜