Использование GPU не от NVIDIA

Использование GPU не от NVIDIA

В этом руководстве объясняется, как использовать GPU от AMD и Apple Silicon с PyTorch в контексте EvoX.

Хотя GPU от NVIDIA являются надежным выбором и обычно обеспечивают высокую производительность, новые модели оптимизированы для задач глубокого обучения и больших языковых моделей. Многие из их расширенных функций, такие как поддержка типов данных низкой точности, в настоящее время недостаточно используются в EvoX. В некоторых случаях GPU других производителей могут обеспечить лучшую производительность и меньшую стоимость для эволюционных задач.

Поддержка GPU от AMD

Поддержка GPU от AMD в PyTorch обеспечивается через ROCm. Устройства AMD распознаются как устройства cuda (так же, как и GPU от NVIDIA). Чтобы использовать GPU от AMD:

  1. Установите версию PyTorch, совместимую с ROCm.
  2. Используйте стандартную настройку устройства, например, device = torch.device("cuda").

Никаких дополнительных изменений, кроме использования сборки ROCm, не требуется.

Поддержка GPU Apple Silicon

Если вы владелец Mac с процессором Apple Silicon, вы можете использовать встроенный GPU для ускорения рабочих нагрузок EvoX. GPU Apple Silicon поддерживаются через бэкенд Metal Performance Shaders (MPS) и доступны с помощью устройства mps в PyTorch.

Чтобы использовать GPU Apple Silicon:

  1. Убедитесь, что у вас установлена версия PyTorch, совместимая с MPS.
  2. Перенесите свои тензоры и модели на устройство mps, например, device = torch.device("mps").

Примечание: Устройство mps не поддерживает компиляцию (например, #evox.compile).