Платформа производительности PyTorch 2.0
Производительность PyTorch 2.0 отслеживается еженедельно на этой платформе. Сбор данных о производительности выполняется на 12 узлах GCP A100 каждую ночь. Каждый узел содержит графический процессор Nvidia A100 с 40 ГБ памяти и центральный процессор Intel Xeon с 6 ядрами и частотой 2,2 ГГц. Соответствующий файл рабочей области CI можно найти здесь.
Как использовать платформу?
Главная страница отображает таблицы для всех трёх наборов тестов, которые мы измеряем, TorchBench, Huggingface, и TIMM, а также графики для одного набора тестов с настройками по умолчанию. Например, на текущих графиках по умолчанию отображается тенденция производительности обучения с AMP в течение последних 7 дней для TorchBench. Вы можете выбрать различные варианты для просмотра таблиц и графиков с помощью выпадающих списков в верхней части страницы. Помимо процентного выполнения, на платформе представлены три ключевых показателя производительности: Geometric mean speedup, Mean compilation time, и Peak memory footprint compression ratio. И Geometric mean speedup, и Peak memory footprint compression ratio сравниваются с производительностью PyTorch в режиме eager, и чем больше значение, тем лучше. Нажатие на любое значение производительности в таблицах перенаправит вас на страницу с подробными данными для всех тестов в данном наборе.
Что измеряется на платформе?
Все тесты платформы определены в этой функции. Точные конфигурации тестов могут меняться, но на данный момент мы измеряем производительность как при выводе, так и при обучении с точностью AMP в трёх наборах тестов. Мы также измеряем различные настройки TorchInductor, включая default, with_cudagraphs (default + cudagraphs), и dynamic (default + dynamic_shapes).
Могу ли я проверить, как моя заявка влияет на производительность TorchInductor на платформе перед слиянием?
Индивидуальные запуски платформы могут быть инициированы вручную, нажав на кнопку Run workflow здесь и отправив её, выбрав ветку вашей заявки. Это запустит весь цикл запуска платформы с изменениями вашей заявки. После завершения вы сможете проверить результаты, выбрав соответствующее имя ветки и идентификатор коммита на интерфейсе платформы производительности. Помните, что это дорогостоящий запуск CI. При ограниченных ресурсах, пожалуйста, используйте эту функцию разумно.
Как я могу запустить тест производительности локально?
Точные команды, используемые во время полного запуска платформы, можно найти в журналах последних запусков CI. Страница рабочей области — хорошее место для поиска журналов некоторых последних запусков. В этих журналах вы можете найти строки, такие как python benchmarks/dynamo/huggingface.py --performance --cold-start-latency --inference --amp --backend inductor --disable-cudagraphs --device cuda, и запустить их локально, если у вас есть графический процессор, работающий с PyTorch 2.0. python benchmarks/dynamo/huggingface.py -h предоставит вам подробное описание параметров сценария тестирования.
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/torch.compiler_performance_dashboard.html