查看原文
其他

NVIDIA 开源 C++ 标准库 Libcu++

CPP开发者 2021-06-06

(给CPP开发者加星标,提升C/C++技能)

来源:开源中国

NVIDIA 已将其 C++ 标准库 libcu++ 在 GitHub 上开源,libcu++ 去年作为 CUDA C++ 标准库被推出,属于 CUDA 10.2 的一部分。它不仅与支持 NVIDIA CUDA 的配置搭配使用,还支持与 CPU 搭配使用 。

NVIDIA 的 libcu++ fork 自 LLVM 的 libc++ 标准库。作为 CUDA C++ 标准库,libcu++ 在过去的一年里已经初具规模,并在此后不断改进,拥有了更多的功能。

作为 NVIDIA C++ 标准库,libcu++ 提供了 C++ 标准库的异构实现,可以在 CPU 和 GPU 代码之间使用。如果有使用 C++ 标准库的经验,相信很快就能上手 libcu++,首先需要在标准库 includes 的开头添加cuda/std/,在使用 std::之前添加cuda::

#include <cuda/std/atomic>cuda::std::atomic<int> x;

NVIDIA C++ 标准库包含在 NVIDIA HPC SDK 和 CUDA 工具包中,无需额外的安装或编译器标志。

NVIDIA 此前曾说过会将其所有为 libcu++ 进行的更改贡献给上游的 LLVM libc++,但目前来看尚未实现,因此 libcu++ 作为 CUDA 和 CPU 配置的 C++ 标准库,相信其本身有可取之处。

事实上,libcu++ 一开始就注定要开源,只是目前花费的时间比预期的长。现在更值得关注的是,NVIDIA 是否会兑现向上游 LLVM libc++ 贡献 libcu++ 代码的承诺,或者 libcu++ 在特定的 CUDA 重点之外本身是否已被广泛采用。


https://github.com/NVIDIA/libcudacxx


- EOF -



推荐阅读  点击标题可跳转

1、用苹果发布会方式打开 C++20

2、C 与 C++ 40 年的爱恨情仇

3、C/C++ 函数指针与指针函数


看完本文有帮助?请分享给更多人

关注「CPP开发者」加星标,提升C/C++技能

好文章,我在看❤️

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存