Веб-сайт | Установить | Учебное пособие | Примеры | Документация | Справочник по API | Форум
CuPy — это NumPy/SciPy-совместимая библиотека массивов для вычислений с графическим ускорением на Python. CuPy выступает в качестве замены для запуска существующего кода NumPy/SciPy на платформах NVIDIA CUDA или AMD ROCm.
> >> import cupy as cp
> >> x = cp . arange ( 6 ). reshape ( 2 , 3 ). astype ( 'f' )
> >> x
array ([[ 0. , 1. , 2. ],
[ 3. , 4. , 5. ]], dtype = float32 )
> >> x . sum ( axis = 1 )
array ([ 3. , 12. ], dtype = float32 )
CuPy также предоставляет доступ к низкоуровневым функциям CUDA. Вы можете передать ndarray
в существующие программы CUDA C/C++ через RawKernels, использовать Streams для повышения производительности или даже напрямую вызывать API-интерфейсы среды выполнения CUDA.
Бинарные пакеты (колеса) доступны для Linux и Windows на PyPI. Выберите подходящий пакет для вашей платформы.
Платформа | Архитектура | Команда |
---|---|---|
CUDA 11.x (11.2+) | x86_64/aarch64 | pip install cupy-cuda11x |
КУДА 12.x | x86_64/aarch64 | pip install cupy-cuda12x |
ROCm 4.3 ( экспериментальный ) | x86_64 | pip install cupy-rocm-4-3 |
ROCm 5.0 ( экспериментальный ) | x86_64 | pip install cupy-rocm-5-0 |
Примечание
Чтобы установить предварительные версии, добавьте --pre -U -f https://pip.cupy.dev/pre
(например, pip install cupy-cuda11x --pre -U -f https://pip.cupy.dev/pre
).
Бинарные пакеты также доступны для Linux и Windows на Conda-Forge.
Платформа | Архитектура | Команда |
---|---|---|
КУДА | x86_64/aarch64/ppc64le | conda install -c conda-forge cupy |
Если вам нужна тонкая установка (без установки зависимостей CUDA), вы можете выполнить conda install -c conda-forge cupy-core
.
Если вам нужно использовать определенную версию CUDA (скажем, 12.0), вы можете использовать метапакет cuda-version
для выбора версии, например conda install -c conda-forge cupy cuda-version=12.0
.
Примечание
Если у вас возникнут какие-либо проблемы с CuPy, установленным из conda-forge
, сообщите об этом в cupy-feedstock, и мы поможем выяснить, является ли это просто проблемой упаковки в рецепте conda-forge
или реальной проблемой в CuPy.
Используйте NVIDIA Container Toolkit для запуска образов контейнеров CuPy.
$ docker run --gpus all -it cupy/cupy
Лицензия MIT (см. файл LICENSE
).
CuPy разработан на основе API NumPy и API SciPy (см. файл docs/source/license.rst
).
CuPy разрабатывается и поддерживается Preferred Networks и участниками сообщества.
Рёсуке Окута, Юя Унно, Дайсуке Нишино, Сёхей Хидо и Криссман Лумис. CuPy: совместимая с NumPy библиотека для вычислений на графическом процессоре NVIDIA. Материалы семинара по системам машинного обучения (LearningSys) на Тридцать первой ежегодной конференции по нейронным системам обработки информации (NIPS) (2017). [PDF]
@inproceedings { cupy_learningsys2017 ,
author = " Okuta, Ryosuke and Unno, Yuya and Nishino, Daisuke and Hido, Shohei and Loomis, Crissman " ,
title = " CuPy: A NumPy-Compatible Library for NVIDIA GPU Calculations " ,
booktitle = " Proceedings of Workshop on Machine Learning Systems (LearningSys) in The Thirty-first Annual Conference on Neural Information Processing Systems (NIPS) " ,
year = " 2017 " ,
url = " http://learningsys.org/nips17/assets/papers/paper_16.pdf "
}
cuSignal теперь является частью CuPy, начиная с версии 13.0.0. ↩