PTX Справочник по бэкенда
English | 简体中文 | 日本語 | Deutsch | Русский
Документация · Руководство компилятора · Примеры · 中文
1. Область применения
ruda_compiler::ptx генерирует текст PTX из ядра Ruda IR. Это не интерпретатор произвольных программ PTX и не генератор окончательного машинного кода NVIDIA.
Включите ruda-compiler/ptx для автономной компиляции. Чтобы выбрать этот путь через среду выполнения CUDA, включите ruda-driver-cuda/direct-ptx.
2. Типы целей
| Тип/поле | Значение |
|---|---|
PtxTarget::version: (u32, u32) |
PTX основная/дополнительная версия |
PtxTarget::sm: u32 |
SM цель |
PtxCompilationOptions::target: Option<PtxTarget> |
Явная целевая конфигурация |
PtxCompiler |
Прямой бэкэнд, реализующий общедоступную черту компилятора |
Компиляция возвращает ошибку проверки, если target отсутствует. Автономный компилятор не извлекает архитектуру GPU из своего хост-компьютера.
Анализ переменных среды принимает major.minor с основной версией не ниже 6 и дополнительной версией не выше 9. Синтаксическая достоверность сама по себе не обеспечивает поддержку драйвера или генератора для этой версии.
3. Вывод компиляции
PtxKernel содержит:
source: текст PTX.entrypoint: имя точки входа.ruda_dim: размеры рабочей группы исходного ядра.shared_memory_bytes: требуется общая память.dynamic_metadata_index: позиция аргумента указателя динамических метаданных, когда это необходимо.
Сохраняйте структуру аргументов, точку входа и требования к общей памяти при вызове уровня выполнения. Сам по себе текст не содержит полного контракта на запуск.
4. Обработка ошибок
Не поддерживается. IR возвращает CompilationError::UnsupportedInstruction. Неверная конфигурация или структура возвращает CompilationError::Validation. Диагностика включает в себя префикс Direct PTX:. Серверная часть не возвращается к NVRTC автоматически.
Определения: модуль PTX, тесты компилятора и выбор бэкенда среды выполнения.