Справочник по вычислительной библиотеке
English | 简体中文 | 日本語 | Deutsch | Русский
Документация · Тензоры и фреймворки · 中文
Вычислительные библиотеки реализуют операции, среда выполнения выполняет их на устройствах, а тензорная платформа их компонует. Названия библиотек описывают обязанности, а не идентичные API или полную функциональность с аналогичными именами библиотек CUDA.
Выберите библиотеку
| Библиотека | Cargo пакет | Крейт Rust | Основные операции |
|---|---|---|---|
| ruBLAS | rublas |
rublas |
Умножение матриц, векторные операции, умножение групповых матриц и INT4 |
| ruDNN | ruDNN |
rudnn |
Внимание, свертка, объединение и MoE |
| ruTENSOR | ruTENSOR |
rutensor |
Общие тензорные сокращения, einsum, сокращения, перестановки и поэлементные операции. |
| ruPRIM | ruPRIM |
ruprim |
Сокращение, сканирование, поэлементные операции и индексирование |
| ruFFT | ruda-fft |
rufft |
Действительное FFT и обратные преобразования |
| ruRAND | ruRAND |
rurand |
Равномерное, нормальное распределение и распределение Бернулли |
| ruSPARSE | ruSPARSE |
rusparse |
Форматы и операции с разреженными матрицами |
| ruCCL | ruCCL |
ruccl |
Коллективное общение и оркестровка |
Слои интерфейса
- Интерфейсы ядра/запуска принимают привязки устройств и конфигурацию выполнения для разработки ядра и библиотек.
- Тензорные интерфейсы обрабатывают выделение, макеты и вызовы, обычно используя
RudaTensor<R>. - Интерфейсы Framework отправляются в библиотеки через такие компоненты, как
ruda-tensor-device.
Операции с одинаковыми именами на разных уровнях могут иметь разные аргументы, типы возвращаемых значений и обработку ошибок. Проверьте пакет, путь к модулю и функцию вместе; Сигнатуры точек входа ядра не являются подписями тензорных точек входа.
Использование направляющих
В руководстве по каждой библиотеке описаны ее назначение, функции, интерфейсы, контракты данных и ограничения. Явно выбирайте функции, необходимые для общего пути, а не предполагайте, что значения по умолчанию подходят для каждого устройства.