Получение максимальной производительности в Google Cloud Run для однопоточного скрипта PythonPython

Программы на Python
Ответить
Anonymous
 Получение максимальной производительности в Google Cloud Run для однопоточного скрипта Python

Сообщение Anonymous »

Я использую сервис Google Cloud Run, который предоставляет конечную точку API, выполняющую тяжелые вычислительные задачи (зависимые от процессора).
API будет вызываться очень редко, и на данный момент одновременных запросов никогда не будет. Я хочу, чтобы выполнение выполнялось как можно быстрее.
Я настроил службу с максимальными доступными настройками ЦП и памяти (8 виртуальных ЦП, 32 ГБ памяти), но общее время выполнения API не улучшилось по сравнению с меньшими конфигурациями. Судя по показателям Cloud Monitoring, загрузка ЦП и использование памяти остаются стабильно низкими (около 10–20%), даже несмотря на то, что процесс должен быть ресурсоемким. Это заставляет меня подозревать, что контейнер не использует полную загрузку ЦП или может иметь место регулирование или конфигурация, ограничивающая производительность.
Или я что-то полностью упускаю?
Ожидаемое поведение:
  • При более крупной конфигурации ЦП и памяти процесс API должен выполняться быстрее и пропорционально использовать больше ресурсов ЦП (в идеале 80–90% загрузки ЦП во время тяжелых вычислений).
Текущая конфигурация:
  • Платформа: Cloud Run (полностью управляемая) – Параллельность: 1 (для изоляции вычислений для каждого запроса)
  • Распределение ЦП: 8 виртуальных ЦП – Выделение памяти: 32 ГБ
  • Тайм-аут выполнения: 60 минут
  • Продолжительность запроса: ~30–45 минут
  • Загрузка ЦП: 10–20 % Вопросы:
  • Ограничивает ли Cloud Run загрузку ЦП во время обработки запросов, даже если настроено максимальное количество виртуальных ЦП?
  • Существует ли лучшая настройка, обеспечивающая полную загрузку ЦП при тяжелых вычислительных нагрузках?
  • Существуют ли рекомендуемые конфигурации или шаблоны для рабочих нагрузок, связанных с ЦП, которые требуют выполнения больших вычислений в течение 60 минут?
    />
Дополнительная информация:
  • Код выполняет многопоточные или параллельные вычисления на Python.
  • Узких мест ввода-вывода не обнаружено.
  • Протестировано на различных конфигурациях компьютеров — производительность практически не изменилась.
Буду очень благодарен за подсказки о том, что я делаю неправильно...

Подробнее здесь: https://stackoverflow.com/questions/798 ... thon-scrip
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»