[ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Обсуждение новостей, соответствующих тематике форума

Модератор: Модераторы разделов

Ответить
Аватара пользователя
rssbot
Бот
Сообщения: 6002
ОС: gnu/linux

[ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение rssbot »

Компания NVIDIA объявила об открытии исходных текстов всех модулей ядра, поставляемых в своём наборе проприетарных видеодрайверов. Код открыт под лицензиями MIT и GPLv2. Возможность сборки модулей обеспечена для архитектур x86_64 и aarch64 на системах с ядром Linux 3.10 и более новыми выпусками. Прошивки и используемые в пространстве пользователя библиотеки, такие как стеки CUDA, OpenGL и Vulkan, остаются проприетарными.



Ожидается, что публикация кода приведёт к существенному повышению удобства работы с GPU NVIDIA в Linux-системах, усилит интеграцию с операционной системой, упростит поставку драйверов и отладку проблем. О формировании пакетов на основе открытых модулей уже заявили разработчики Ubuntu и SUSE. Наличие открытых модулей также упростит интеграцию драйверов NVIDIA с системами на базе нестандартных кастомизированных сборок ядра Linux. Для NVIDIA открытие кода поможет повысить качество и безопасность Linux-драйверов за счёт более тесного взаимодействия с сообществом и возможности стороннего рецензирования изменений и проведения независимого аудита.



Отмечается, что представленная открытая кодовая база одновременно применяется при формировании проприетарных драйверов, в частности используется в опубликованной сегодня бета-ветке 515.43.04. При этом первичным является закрытый репозиторий, а предложенная открытая кодовая база будет обновляться для каждого выпуска проприетарных драйверов в форме слепка после определённой обработки и чистки. История отдельных изменений не предоставляется, только общий коммит для каждой версии драйвера (в настоящий момент опубликован код модулей для драйвера 515.43.04).


Тем не менее, представителям сообщества предоставлена возможность отправки pull-запросов для продвижения своих исправлений и изменений в код модулей, но эти изменения не будут отражаться в виде отдельных изменений в открытом репозитории, а будут вначале интегрироваться в основной закрытый репозиторий и только потом переноситься с остальными изменениями в открытый. Для участия в разработке требуется подписание соглашение о передаче компании NVIDIA имущественных прав на передаваемый код (Contributor License Agreement).


Код модулей ядра разделён на две части: общие компоненты не привязанные к операционной системе и прослойка для взаимодействия с ядром Linux. Для сокращения времени установки общие компоненты как и раньше поставляются в проприетарных драйверах NVIDIA в форме уже собранного бинарного файла, а прослойка собирается на каждой системе с учётом текущей версии ядра и имеющихся настроек. Предлагаются следующие модули ядра: nvidia.ko, nvidia-drm.ko (Direct Rendering Manager), nvidia-modeset.ko и nvidia-uvm.ko (Unified Video Memory). Модулями поддерживаются только GPU на базе микроархитектур Turing и Ampere, т.е. выпускаемые с сентября 2018 года.



Поддержка серии GeForce и GPU для рабочих станций отмечена как имеющая уровень качества альфа-версии, но для специализированных GPU на базе архитектур NVIDIA Turing и NVIDIA Ampere, применяемых в датацентрах для ускорения обработки информации и параллельных вычислений (CUDA), обеспечена полная поддержка, полностью протестированная и пригодная для применения в рабочих проектах (открытый код уже готов заменить проприетарные драйверы). Стабилизацию поддержки GeForce и GPU для рабочих станций планируют осуществить в следующих выпусках. В конечном счёте уровень стабильности открытой кодовой базы будет доведён до состояния проприетарных драйверов.


В текущем виде включение опубликованных модулей в основной состав ядра невозможно, так как они не соответствуют требованиям ядра к стилю кодирования и соглашениям по архитектуре, но компания NVIDIA намерена совместно с Canonical, Red Hat и SUSE заняться решением этого вопроса и стабилизацией программных интерфейсов драйверов. Кроме того, опубликованный код может использоваться для улучшения входящего в ядро открытого драйвера Nouveau, в котором используются те же прошивки к GPU, что и в проприетарном драйвере.









Источник: https://www.opennet.ru/opennews/art.shtml?num=57175
(opennet.ru, основная лента)
Последний раз редактировалось rssbot 13.05.2022 08:50, всего редактировалось 3 раза.
Причина: Updated upstream
Спасибо сказали:
Аватара пользователя
yoricI
Сообщения: 2346
ОС: gentoo fluxbox

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение yoricI »

1) Что-то все прямо побежали, как будто в рай боятся не успеть... Где подвох?
2) Так они разве несвободные были до этого? Ну да, считались не, но свободно компилялись на каждой системе, подумаешь, ядро говорило при загрузке модуля, что-то там "tainted". По факту бесплатно, пользуйся не хочу.
3) Ну теперь дай бог с nouveau заживём)) Нельзя было на него с тех исходники перетягивать, потому те несвободные?
Спасибо сказали:
Aliech
Сообщения: 952
Статус: дилетант широкого профиля
ОС: Gentoo arm64 musl hardened
Контактная информация:

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение Aliech »

Ага. А что там про библиотеки?
С уважением,
Павел Алиев
Спасибо сказали:
Аватара пользователя
RusWolf
Сообщения: 604
ОС: Arch Linux x64 на BTRFS

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение RusWolf »

Aliech писал:
12.05.2022 11:31
А что там про библиотеки?
Как были закрыты, так пока и закрыты. Если разговор про user-space libraries and OpenGL / Vulkan / OpenCL / CUDA.
Спасибо сказали:
Aliech
Сообщения: 952
Статус: дилетант широкого профиля
ОС: Gentoo arm64 musl hardened
Контактная информация:

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение Aliech »

RusWolf писал:
12.05.2022 12:14
Aliech писал:
12.05.2022 11:31
А что там про библиотеки?
Как были закрыты, так пока и закрыты. Если разговор про user-space libraries and OpenGL / Vulkan / OpenCL / CUDA.
Да. Я про них. И, кстати, это был риторический вопрос.
С уважением,
Павел Алиев
Спасибо сказали:
Аватара пользователя
yoricI
Сообщения: 2346
ОС: gentoo fluxbox

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение yoricI »

То есть ядерный модуль работает только со своими библиотеками?
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение Bizdelnick »

Не понял, а раньше они что давали, если не исходники модуля?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Aliech
Сообщения: 952
Статус: дилетант широкого профиля
ОС: Gentoo arm64 musl hardened
Контактная информация:

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение Aliech »

yoricI писал:
12.05.2022 16:30
То есть ядерный модуль работает только со своими библиотеками?
Библиотеки нужны Xorg'у, например. Зачем? Чтобы правильно "готовить" к выводу поступающую информацию к дальнейшему отображению. Вот именно тут все "плюшки" закрытого драйвера были. А модуль... А в модуле никакой особенной логики нет. Там только интерфейс для загрузки того, что выдал Xorg+прориетартные библиотеки. Ну это если очень упростить.
Bizdelnick писал:
12.05.2022 16:57
Не понял, а раньше они что давали, если не исходники модуля?
Вариация решения от NVidia на тему, "как бы нам хайпануть на open source, но ничего при этом особо не делая/не меняя".
С уважением,
Павел Алиев
Спасибо сказали:
Аватара пользователя
yoricI
Сообщения: 2346
ОС: gentoo fluxbox

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение yoricI »

Aliech писал:
12.05.2022 21:25
А модуль... А в модуле никакой особенной логики нет.
Ничего себе, под 20МБ размерчик...
Спасибо сказали:
Аватара пользователя
Janik
Сообщения: 848
Статус: Оператор вычислительных машин
ОС: Debian

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение Janik »

Bizdelnick писал:
12.05.2022 16:57
Не понял, а раньше они что давали, если не исходники модуля?
Исходники-то давали, вот только на их основе что-то сделать нельзя было, ибо нарушение копирйта.
yoricI писал:
12.05.2022 16:30
То есть ядерный модуль работает только со своими библиотеками?
Как я понял, пока да. Но раз уж модуль ядра открыт, то никто не мешает сделать свои юзерленд библиотеки с блэкджеком и шлюхами.
Кто ищет, тот всегда найдет!
Опыт - это когда все получается с первого раза.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение Bizdelnick »

Janik писал:
14.05.2022 17:31
Исходники-то давали, вот только на их основе что-то сделать нельзя было, ибо нарушение копирйта.
И как это юридически могло работать? GPL же.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Aliech
Сообщения: 952
Статус: дилетант широкого профиля
ОС: Gentoo arm64 musl hardened
Контактная информация:

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение Aliech »

Janik писал:
14.05.2022 17:31
yoricI писал:
12.05.2022 16:30
То есть ядерный модуль работает только со своими библиотеками?
Как я понял, пока да. Но раз уж модуль ядра открыт, то никто не мешает сделать свои юзерленд библиотеки с блэкджеком и шлюхами.
Ничего не мешает, кроме непонимания специфики поведения проприетарных библиотек? Ничего, кроме возможности попасть под длительные судебные тяжбы, если Нвидиа решит, что вы нарушили их интеллектуальную собственность?

Модуль во всей этой истории, как я уже писал выше, он про вытаскивание сформированного в юзерленде на видюху. Ну и мелкие ништяки специфические на нём же, типа управления питанием. Единственное, что они сделали, сменив лицензию - убрали ограничение на поставку в модуля в составе дистрибутивов. Теперь его можно поставлять в уже скомпилированном виде, попутно спихнув возможные проблемы на мейнтейнеров дистрибутива. Мол если он там не компилится, обработайте напильником. Теперь это можно официально ;)

Они режут издержки, никак не улучшая инфраструктуру, а вы уже повод для радости увидели.
С уважением,
Павел Алиев
Спасибо сказали:
Аватара пользователя
Janik
Сообщения: 848
Статус: Оператор вычислительных машин
ОС: Debian

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение Janik »

Bizdelnick писал:
15.05.2022 01:12
И как это юридически могло работать? GPL же.
Так ведь GPL - это сейчас, а раньше модуль был проприетарным.
Кто ищет, тот всегда найдет!
Опыт - это когда все получается с первого раза.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение Bizdelnick »

Janik писал:
17.05.2022 15:40
Так ведь GPL - это сейчас, а раньше модуль был проприетарным.
Но он же линковался с ядром, которое под GPL.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5282
ОС: Gentoo

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение /dev/random »

Bizdelnick писал:
17.05.2022 15:43
Но он же линковался с ядром, которое под GPL.
При линковке соблюдать GPL требуется только при распространении полученного бинарника. Распространять исходники и сборочные скрипты несовместимость лицензий не мешает.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение Bizdelnick »

/dev/random писал:
17.05.2022 15:52
Распространять исходники и сборочные скрипты несовместимость лицензий не мешает.
Возвращаемся к вопросу:
Bizdelnick писал:
12.05.2022 16:57
а раньше они что давали, если не исходники модуля?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
Janik
Сообщения: 848
Статус: Оператор вычислительных машин
ОС: Debian

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение Janik »

Код: Выделить всё

/* _NVRM_COPYRIGHT_BEGIN_
 *
 * Copyright 1999-2021 by NVIDIA Corporation.  All rights reserved.  All
 * information contained herein is proprietary and confidential to NVIDIA
 * Corporation.  Any use, reproduction, or disclosure without the written
 * permission of NVIDIA Corporation is prohibited.
 *
 * _NVRM_COPYRIGHT_END_
 */
Вот кусок исходников модуля версии 470.103.01.
Кто ищет, тот всегда найдет!
Опыт - это когда все получается с первого раза.
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5282
ОС: Gentoo

Re: [ON] Компания NVIDIA открыла код видеодрайверов для ядра Linux

Сообщение /dev/random »

Bizdelnick писал:
17.05.2022 18:49
а раньше они что давали, если не исходники модуля?
Во-первых, они раньше были под проприетарной лицензией. Во-вторых, говорят (не проверял), что раньше большая часть логики ядерного модуля была не в основном (опубликованном-но-проприетарном) коде, а в используемой им закрытой статической библиотеке.
Спасибо сказали:
Ответить