Какое рекомендуемое количество потоков для Pytorch по сравнению с доступными ядрами процессора?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Какое рекомендуемое количество потоков для Pytorch по сравнению с доступными ядрами процессора?

Сообщение Anonymous »

Сначала я хочу сказать, что у меня мало опыта с Pytorch, ML, NLP и другими связанными темами, поэтому я могу путать некоторые концепции. Извините. Во время эталона я контролировал использование процессора и увидел, что использовалось только 50% процессора. У меня есть 8 VCPU, но только 4 из них загружаются на 100% одновременно. Нагрузка прыгает, то есть может быть ядер 1, 3, 5, 7, которые загружаются на 100%, затем ядер 2, 4, 6, 8, которые загружаются на 100%. Но в общей сложности нагрузки на процессор никогда не повышается более 50%, она также никогда не опускается ниже 50%. Эта нагрузка на 50% постоянна. < /P>
После быстрого гугля я обнаружил, что параллелизм документ. Я позвонил get_num_threads () и get_num_interop_threads () , а вывод был 4 для обоих вызовов. Только 50% доступных ядер ЦП, которые объясняют, почему загрузка процессора была на 50%. Использование процессора было на 100%. В целом производительность была немного быстрее, но некоторые модели начали работать немного медленно, чем на 50% процессора. Это оптимально и рекомендуется? Должен ли я вручную вызовать set_num_threads () и set_num_interop_threads () со всеми доступными ядрами процессора, если я хочу достичь наилучшей производительности? VCPU немного быстрее, чем один процесс Pytorch со 100% VCPU. Ранее это было наоборот, поэтому я думаю, что это зависит от моделей, которые используются. Время процесса одного входа намного медленнее, чем с одним процессом Pytorch. < /Li>
Два параллельных процесса Pytorch со 100% VCPU не могут завершить даже один вход. Я полагаю, что ЦП постоянно переключается между этими процессами. < /Li>
< /ul>
Так что спасибо ответу Феникса, я думаю, что вполне разумно использовать настройки по умолчанию Pytorch, которые устанавливают количество потоков в соответствии с количеством физических (не виртуальных). https://pytorch.org/docs/stable/notes/c ... rence.html

Подробнее здесь: https://stackoverflow.com/questions/760 ... ilable-cpu
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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