CuPy v13.4.0 发布:支持 CUDA 12.8 和 Python 3.13 的新特性解析
CuPy 是一个基于 NumPy 接口的 GPU 加速计算库,专为高性能科学计算设计。它提供了与 NumPy 相似的 API,能够无缝地将 CPU 计算迁移到 NVIDIA GPU 和 AMD GPU 上,显著提升计算性能。CuPy 特别适合处理大规模数组运算、深度学习框架后端以及各种科学计算场景。
CUDA 12.8 和 Blackwell 架构支持
CuPy v13.4.0 正式加入了对 NVIDIA CUDA 12.8 的支持,这意味着开发者现在可以在最新的 CUDA 环境下使用 CuPy 进行 GPU 加速计算。这一更新特别引人注目的是对 NVIDIA 最新 Blackwell 架构 GPU(计算能力 sm_100 和 sm_120)的支持,为使用最新硬件的研究人员和开发者提供了性能优化的可能。
AMD ROCm 6.x 兼容性
对于 AMD GPU 用户,新版本解决了与 ROCm 6.x 的兼容性问题。通过修复 HIP 版本单位识别和指针属性获取等问题,CuPy 现在能够在 ROCm 6.2.2 等新版本环境中稳定运行,扩展了其在异构计算生态中的应用范围。
Python 3.13 支持
随着 Python 3.13 的发布,CuPy 迅速跟进,提供了对应的二进制包。这一更新确保了使用最新 Python 版本的开发者能够无缝集成 CuPy 到他们的工作流中。值得注意的是,为了支持 Python 3.13,CuPy 代码库已全面迁移到 Cython 3.0,这要求从源代码构建时需要 Cython 3.0 或更高版本。
性能优化与功能增强
新版本在多个方面进行了性能优化:
- 使用自定义的 less 和 min/max 实现替代了 thrust 和 CUB 的特化,可能带来特定场景下的性能提升
- 实现了 DLPack v1 标准,改善了与其他深度学习框架的互操作性
- 信号处理模块新增了 MVDR(最小方差无失真响应)算法实现
- 插值模块中的 RBF(径向基函数)实现更新至与 SciPy 1.13 兼容的版本
重要变更与兼容性说明
开发者需要注意以下重要变更:
- 构建要求从 Cython 0.29.x 升级到 Cython 3.0 或更高版本
- 开始采用 C++17 标准进行 JIT 编译,可能影响自定义内核的兼容性
- 稀疏数组创建现在会拒绝 3 维尝试,并抛出 ValueError
- 移除了已弃用的 cupy.array_api 子模块
问题修复与稳定性改进
v13.4.0 修复了多个关键问题:
- 解决了 64 位 nccl.broadcast 的支持问题
- 修复了 ROCm 5.7 中未注册指针导致的 hipPointerGetAttributes 错误
- 修正了 RNG 在指定非 float32/float64 类型时的内存分配问题
- 解决了 Windows 构建中的 /bigobj 需求
- 修复了量化计算中可能出现的崩溃问题
测试与质量保证
新版本大幅扩展了测试覆盖范围:
- 增加了对 NumPy 2.x 和 SciPy 1.14 的测试支持
- 为 CUDA 12.8 和 Python 3.13 添加了专门的 CI 测试
- 使用 ruff 替代 flake8 进行代码风格检查
- 改进了对稀疏矩阵操作的测试验证
总结
CuPy v13.4.0 是一个重要的版本更新,它不仅跟进了最新的硬件和软件生态(CUDA 12.8、ROCm 6.x、Python 3.13),还在性能优化、功能增强和稳定性方面做出了显著改进。对于科学计算和深度学习领域的工作者来说,升级到这个版本将能够获得更好的硬件支持、更稳定的运行体验以及潜在的性能提升。特别是那些计划使用最新 Blackwell 架构 GPU 的用户,这一更新将为他们提供必要的软件支持。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C051
MiniMax-M2.1从多语言软件开发自动化到复杂多步骤办公流程执行,MiniMax-M2.1 助力开发者构建下一代自主应用——全程保持完全透明、可控且易于获取。Python00
kylin-wayland-compositorkylin-wayland-compositor或kylin-wlcom(以下简称kywc)是一个基于wlroots编写的wayland合成器。 目前积极开发中,并作为默认显示服务器随openKylin系统发布。 该项目使用开源协议GPL-1.0-or-later,项目中来源于其他开源项目的文件或代码片段遵守原开源协议要求。C01
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7GLM-4.7上线并开源。新版本面向Coding场景强化了编码能力、长程任务规划与工具协同,并在多项主流公开基准测试中取得开源模型中的领先表现。 目前,GLM-4.7已通过BigModel.cn提供API,并在z.ai全栈开发模式中上线Skills模块,支持多模态任务的统一规划与协作。Jinja00
agent-studioopenJiuwen agent-studio提供零码、低码可视化开发和工作流编排,模型、知识库、插件等各资源管理能力TSX0127
Spark-Formalizer-X1-7BSpark-Formalizer 是由科大讯飞团队开发的专用大型语言模型,专注于数学自动形式化任务。该模型擅长将自然语言数学问题转化为精确的 Lean4 形式化语句,在形式化语句生成方面达到了业界领先水平。Python00