Линус Торвальдс отрицает, что у планировщика задач Linux есть проблемы с портом Stadia

google-stadia-cover

Мальте Скарупке разработчик игрПубликую сравнение производительности блокировок на основе Mutex и Spinlock с помощью различных планировщиков задач. Тесты показали аномальные задержки длины при использовании Spinlock с планировщиком задач по умолчанию в Linux.

Автор тестов пришел к выводу, что у планировщика задач Linux есть проблемы это влияет отрицательно работа игры, созданные для сервиса Google Stadia, где игры запускаются на графическом процессоре в облачной среде, а клиент передает только экранный контент со скоростью до 60 кадров в секунду.

В таких условиях необходимо обеспечить своевременное отображение кадров на экране, при этом отмечаются задержки более одной миллисекунды.

Линус Торвальдс присоединился к обсуждению доказательств, назвав их «чистым мусором». и пример того, как получить показатели, которые не отражают реальную реальность, без полного понимания предмета.

Торвальдс писал:

Весь пост кажется неправильным и измеряет нечто совершенно отличное от того, что думает и утверждает автор.

Прежде всего, спин-блокировки можно использовать только в том случае, если вы действительно знаете, что вы не запрограммированы при их использовании ... В основном он считывает время до снятия блокировки, а затем считывает его после повторного получения блокировки и заявляет, что время - это разница - это время, когда блокировка не поддерживалась. Что глупо, бесполезно и совершенно неправильно.

Это полная чушь.

Spinlock - это низкоуровневый примитив, который необходимо использовать в пользовательском пространстве с большой осторожностью и полностью понимать детали; в противном случае вы можете получить то, что продемонстрировал тестер.

Линус посоветовал разработчикам игр не использовать спин-блокировку и что они не пытаются блокировать свои собственные системы блокировки на его основе, лучше использовать существующие проверенные механизмы чтобы сообщить системе, что они ждут снятия блокировки, чтобы исключить влияние программиста.

Плагины на основе спин-блокировки можно использовать только с полной уверенностью, что программист не прервет их выполнение. Блокировки на основе спин-блокировки, используемые в тестах, реализуются посредством самодельной привязки, которая работает в пользовательском пространстве.

Планировщик задач может взять управление в любой момент во время выполнения этой ссылки и переключиться на другую задачу.

Учитывая то, чтоИзмерение производительности основано на абсолютных значениях таймера., определенные задержки в тестах покрывают не только задержки в контроллере блокировка, но также код, который был запущен в другом контексте, так сказать.

Он измеряет не только то, что тестер пытался измерить, но и «шум» от других вычислений в системе.

Проблема в том, что разработчикам вообще не следовало использовать спин-блокировкиг, поскольку, Виноват не программист Linux, а подходы разработчиков к его использованию.

Автор теста пытался возразить Линусу, отмечая, что использование проприетарных систем блокировки на основе спин-блокировок часто используется на практике в играх, поскольку при использовании более простых программистов, чем в Linux, тесты показывают лучшую производительность.

Линус упомянул, что планировщик Linux универсален., доработанный десятилетиями и оптимизирован не только для рабочего стола и игры, но и для других типов грузов работают, например, серверные системы и поэтому учитывают множество нюансов при планировании задач.

Добавьте определенные оптимизации, которые уменьшат задержку в играх Google Stadia может повысить скорость отклика в конкретном случае, но, вероятно, снизит общую производительность программиста.

Например, планировщик Windows лучше работает в обсуждаемых тестах, поскольку он намного проще, чем планировщик Linux, и в первую очередь оптимизирован для конкретных задач рабочего стола.

источник: https://probablydance.com/


Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.