Linux с открытым исходным кодом Intel Инженеры графических драйверов оценивают возможные улучшения ядра Linux для обеспечения синхронизированного планирования приоритетов CPU и GPU.
Разработчик драйвера Intel для Linux Твртко Урсулин хорошо подытожил свое внимание к патчам, поэтому вот ключевая выдержка из того, что разрабатывается и что в настоящее время достигается с помощью набора из шести патчей, разосланных сегодня:
Общая идея состоит в том, что текущий ландшафт обработки, кажется, все больше и больше состоит из конвейеров, где вычисления выполняются на нескольких аппаратных устройствах. Кроме того, некоторые из устройств, не связанных с процессором, например, в этом случае многие графические процессоры, поддерживаемые драйвером i915, фактически поддерживают планирование на основе приоритета, которое в настоящее время довольно недоступно для пользователя (с точки зрения возможности управлять им извне).
Из этих двух утверждений возникает вопрос о том, как обеспечить простой, эффективный и консолидированный пользовательский интерфейс. Другими словами, почему пользователь не сможет сделать что-то вроде:
$ nice ffmmpeg… перекодировать мои видео…
$ my-favourite-gameИ применима ли хорошая подсказка к частям конвейера перекодирования графического процессора?
Еще одна причина, по которой я начал думать об этом, заключается в том, что я заметил, что браузер Chrome, например, использует приятное для отмены приоритета фоновых вкладок. И снова, распространение этого решения на конвейер рендеринга графического процессора звучит как большой плюс для общего пользовательского опыта.
Этот RFC реализует эту идею, при этом непростой частью является цепочка уведомлений, которую я добавил для включения динамических корректировок. Это глобальный уведомитель, который вызывает несколько вопросов, поэтому мне очень любопытно, что здесь подумают эксперты. Пожалуйста, просмотрите раскрытия в первом патче, чтобы узнать больше об этом. А также последние два патча-это те, которые реализуют хэш-таблицу в i915, чтобы он мог связать обратный вызов уведомителя с правильными контекстами рендеринга GPU.
Первоначальный «запрос комментариев» Tvrtko исправления разрабатываются, и тестирование с изменением приоритета оказывает ожидаемое влияние на графическую производительность, показывая, что действительно есть возможности для улучшения взаимодействия с пользователем. На данный момент ведется поиск отзывов о дизайне/подходе от других разработчиков ядра.
Дополнительные сведения см. в этой серии исправлений .