Патчи драйвера Windows NT Sync Driver для ядра Linux значительно улучшают производительность многих старых игр через Wine (от 21% в Metro 2033 до 678% в DiRT 3).
Разработчики проекта пояснили, что драйвер NTSYNC предоставляет /dev/ntsync как новое символьное устройство для реализации некоторых примитивов синхронизации Windows NT непосредственно в ядре Linux. В свою очередь, это повышает производительность некоторых игр/приложений Windows, работающих в Linux через Wine, а в некоторых случаях получается выявить даже более высокую производительность, чем ожидали разработчики.
«Проект Wine предоставляет доступ к Windows API в пользовательском пространстве. Одна конкретная часть этого API, а именно примитивы синхронизации NT, исторически реализовывалась через RPC для выделенного процесса ядра. Однако более поздние приложения используют эти API более интенсивно, и накладные расходы RPC стали узким местом. API-интерфейсы синхронизации NT слишком сложны, чтобы их можно было реализовать поверх существующих примитивов без ущерба для корректности. Некоторые операции, такие как NtPulseEvent() или режим "ожидания всех" NtWaitForMultipleObjects(), требуют прямого контроля над базовой очередью ожидания, и реализация очереди ожидания, достаточно устойчивой для Wine, в пользовательском пространстве невозможна. Таким образом, предлагаемый драйвер реализует проблемные интерфейсы непосредственно в ядре Linux«, — пояснили разработчики проекта
