- Устранена регрессия, впервые обнаруженная в драйверах версии 358.09, которая на некоторых GPU приводила к некорректному рендерингу OpenGL стерео приложений в комбинации с Quadro Sync.
- Устранена регрессия, впервые обнаруженная в драйверах версии 358.09, которая приводила к зависанию OpenGL стерео приложений при включении режимов SLI AFR, SFR или SLIAA. Устранена регрессия, впервые обнаруженная в драйверах версии 358.09, которая приводила к зависанию системы во время запуска OpenGL приложений при использовании некоторых топологий SLI Mosaic.
- Устранена ошибка, которая могла приводить к мерцанию G-SYNC мониторов на GPU с архитектурой Kepler при воспроизведении видео с низкой частотой смены кадров. Устранена регрессия, которая могла приводить к зависанию OpenGL или VDPAU приложений в топологиях Xinerama, которые включают в себя несколько экранов, подключенных к одному GPU.
- Добавлен переход в аварийный режим, чтобы обеспечить функционирование GLX при блокировании связи между сокетами клиентской стороны NVIDIA GLX и серверной стороны NVIDIA GLX. К примеру, политика SELinux на Fedora 22 блокирует работу драйвера NVIDIA 358.09 GLX на GDM3 - https://bugzilla.redhat.com/show_bug.cgi?id=1271401
- Устранена ошибка, которая могла приводить к сбоям работы nvidia-installer во время установки пакета драйвера, к которому были добавлены предварительно скомпилированные интерфейсы ядра (например, используя опцию «--add-this-kernel»). Устранена регрессия из драйверов версии 358.09, которая приводила к ситуации, когда G-SYNC мониторы, настроенные для работы с технологией 3D Vision, отображали черный экран и сообщали о том, что сигнал не поддерживается. Устранена регрессия из драйверов версии 358.09, из-за которой OpenGL приложения не запрашивали разрешение на выполнение функции glXSwapBuffers через флиппинг. Подобное было замечено на Fedora 22, где системная политика SELinux не поддерживала связь графической оболочки gnome-shell с сервером.
- Теперь OpenGL приложения, не использующие флиппинг, возвращаются к glXSwapBuffers через блиттинг. Более подробно смотрите на https://bugzilla.redhat.com/show_bug.cgi?id=1271401. Устранена регрессия, которая снижала производительность OpenGL на серверах с возможностью удаленной настройки. Устранена утечка памяти, происходившая после удаления декларации GLXWindow, которая содержит образы из этой памяти. Устранена ошибка, которая приводила к созданию буферов пикселей EGL вместе с кадровым буфером и буфером невидимых поверхностей, а не с буфером невидимых поверхностей, как этого требует EGL. Добавлен новый модуль ядра nvidia-modeset.ko. Это новый компонент драйвера работает совместно с модулем ядра nvidia.ko для программирования движка дисплея GPU.
- nvidia-modeset.ko не предоставляет сторонним приложениям никакой видимой для пользователя функциональности или интерфейсов. Однако в будущих выпусках драйверов nvidia-modeset.ko будет использован в качестве базы для интерфейса установки режима менеджером прямого рендеринга (DRM).
- Сокращены мерцания экрана и задержки при переходе в и из режима G-SYNC. Мониторы с индикаторами G-SYNC на экране теперь будут всегда сообщать, когда они в режиме G-SYNC. Визуальный индикатор G-SYNC можно включить в nvidia-settings, чтобы определять, когда G-SYNC действительно используется. GLX протоколы для следующих OpenGL расширений, начиная от OpenGL 3.0, были переведены из статуса неофициальных в статус официальных, одобренных ARB:
- GL_EXT_draw_buffers2
GLX-протокол для следующих OpenGL команд:
BindBufferRangeNV
,BindBufferBaseNV
,BeginTransformFeedbackNV
,EndTransformFeedbackNV
,GetTransformFeedbackVaryingEXT
,TransformFeedbackVaryingsEXT
, которые являются частью следующих расширений:GL_NV_transform_feedback
,GL_EXT_transform_feedback
, был переведен из статуса неофициального в статус официального, одобренного ARB - Учитывая вышеуказанные изменения, GLX протокол для OpenGL 3.0 был переведен из статуса неофициального в статус официального, одобренного ARB:
- В OpenGL драйвер добавлен новый механизм распределения системной памяти. Этот механизм позволяет отключать от адресного пространства объекты, размещенные в памяти, когда они не используются. Благодаря этому приложению доступно больше виртуального адресного пространства. В 32-битных OpenGL приложениях с Linux 3.11 и glibc 2.19 и выше этот механизм включен по умолчанию. Память, распределяемая подобным образом, занимает пространство в /dev/shm. Установка переменной __GL_DevShmPageableAllocations в значение 2 отключит этот механизм.
- Добавлена поддержка OpenGL 4.3
- Добавлена поддержка X.org xserver ABI 20 (xorg-server 1.18).
>>> Подробности