Отчет о развитии проекта Nouveau, открытого драйвера для видеокарт NVIDIA

Опубликован 44 отчет о развитии открытый драйвера Nouveau, разрабатываемого энтузиастами на основании обратного инжиниринга проприетарных драйверов NVIDIA. Прошлый отчет был представлен в марте прошлого года. В отчете отмечается:
  • Поддержка 2D EXA-акселерации для карт GeForce 400/500 "Fermi". Интеграция поддержки "Fermi" в состав Linux-ядра 2.6.37.
  • Продолжение обратного инжиниринга прошивок для карт на базе чипов Fermi;
  • Завершение разбора сути движка FuC, предоставляющего средства для разработки скриптов, позволяющих упростить и унифицировать многие операции для "Fermi" и других микроконтроллеров.
  • Предпринята попытка создания собственного FuC-компилятора, используя llvm и cmake, который позволит разрабатывать альтернативные прошивки;
  • Разбор движка PDAEMON, используемого в картах nva3 для управления питанием;
  • В состав Mesa интегрирован новый gallium-драйвер nvc0, который заметно опережает по производительности ранее используемый драйвер nv50;
  • Nouveau теперь развивается только как драйвер, поддерживающий переключение видеорежимов на уровне ядра (KMS). Поддержка переключения видеорежимов на пользовательском уровне (UMS) прекращена.
  • Подготовлен новый менеджер управления памяти, который позволил повысить производительность работы драйвера;
  • Реализована поддержка метода Page Flipping, при котором вместо копирования содержимого буфера в видеопамять, применяется техника быстрого переключения между двумя буферами в видеопамяти, пока один из буферов заполняется, другой отображается на экране.
  • Ведется работа по обеспечении поддержки техники Z-сжатия (Z-compression), при которой линейные уравнения сохраняются в виде Z-компонентов для каждого пикселя повторяющейся области. Код с поддержкой Z-сжатия планируется интегрировать в Linux-ядро 2.6.39;
  • Увеличение стабильности gallium-драйверов nvfx/nv50, которые уже вполне пригодны для повседневного использования совместно с Cоmpiz/Kwin.
  • В nv50 скоро будут добавлены ранее созданные для nvc0 наработки, который позволят ощутимо поднять производительности драйвера (сейчас 90 fps, nvc0: 140 fps, +zcomp: 170 fps, +pageflip: 190 fps);
  • Обеспечена поддержка дисплейного сервера Wayland для карт nv40+;
  • Расширены возможности по управлению питанием и контролем за температурой GPU;

Полный текст статьи читайте на OpenNet