LINUX.ORG.RU
ФорумTalks

NVIDIA открывает спецификации на свои GPU

 datasheets, ,


1

4

Вы не поверите! Но 23 сентября в рассылку nouveau пришло такое письмо:

Hi Nouveau developers,

NVIDIA is releasing public documentation on certain aspects of our GPUs, with the intent to address areas that impact the out-of-the-box usability of NVIDIA GPUs with Nouveau. We intend to provide more documentation over time, and guidance in additional areas as we are able.

As a first step towards that, we've posted a document here:

ftp://download.nvidia.com/open-gpu-doc/DCB/1/DCB-4.0-Specification.html

Оригинал

★★★★★
Ответ на: комментарий от Reset

Сравни время загрузки, сравни время копирования большого количества файлов

Винда выигрывает по всем параметрам.

Что-та на практике я наблюдаю прямо противоположное.

Manhunt ★★★★★
()
Последнее исправление: Manhunt (всего исправлений: 1)
Ответ на: комментарий от Manhunt

Я наблюдаю то о чем говорю. Современный линукс на десктопе это тормоза, глюки, треш и ад.

Reset ★★★★★
()

Надеюсь, скоро nouveau будет работать на уровне nvidia, если не лучше.

echo123
()
Ответ на: комментарий от dikiy

Оно ничего не делает (см. http://www.opengl.org/sdk/docs/man/xhtml/glEnable.xml). А вот glEnable(GL_BELND) может вызвать перекомпиляцию шейдера когда команда отправленная через glDraw* будет исполнятся видеокартой. Внутри этой самой glEable при этом будут находится кучи проверок, кэширование состояний и чёрт знает что ещё. В итоге вместо установки одного битика будет сделана куча работы.

ranka-lee
()
Ответ на: комментарий от dikiy

и ты считаешь, что эту светлую возможность надо довести до своего логического финишаß

Иначе игры на PC будут сосать всю жизнь. Текущее поколение консолей персоналки кое-как догнали совсем недавно. Следующее не догонят никогда.

ranka-lee
()
Ответ на: комментарий от ranka-lee

Оно ничего не делает (см. http://www.opengl.org/sdk/docs/man/xhtml/glEnable.xml). А вот glEnable(GL_BELND) может вызвать перекомпиляцию шейдера

так может, или вызовет? И если вызовет, значит это необходимо, или?

когда команда отправленная через glDraw* будет исполнятся видеокартой. Внутри этой самой glEable при этом будут находится кучи проверок, кэширование состояний и чёрт знает что ещё.

интересно, а почему это вдруг glEnable(GL_BLEND) делает кучу ненужных вещей?

В итоге вместо установки одного битика будет сделана куча работы.

dikiy ★★☆☆☆
()
Ответ на: комментарий от ranka-lee

и ты считаешь, что эту светлую возможность надо довести до своего логического финишаß

Иначе игры на PC будут сосать всю жизнь. Текущее поколение консолей персоналки кое-как догнали совсем недавно. Следующее не догонят никогда.

/me смотри на тебя с недоумением.

dikiy ★★☆☆☆
()
Ответ на: комментарий от ranka-lee

А вот glEnable(GL_BELND) может вызвать перекомпиляцию шейдера

а каким образом вершинный, пиксельный или геометрический шейдер связан с блендингом? он насколько я помню где-то после пиксельного шейдера должен идти.

st0ke
()
Ответ на: комментарий от st0ke

Тем что блендинг реально картой может делаться через шейдер. Включил блендинг, драйвер пропатчил шейдер и перекомпилировал его.

ranka-lee
()
Ответ на: комментарий от dikiy

интересно, а почему это вдруг glEnable(GL_BLEND) делает кучу ненужных вещей?

А зачем делать кучу проверок на валидность аргументов, что то там кэшировать и делать всё остальное?

так может, или вызовет?

Может. А может и нет. И у вас нет никакого контроля над этим вообще. Например иллюстрацией убогости GAPI может служить приём именуемый «разогрев видеокарты». Когда после загрузки данных игра рисует в маленькую текстурку 1 на 1 пиксель все текстуры со всем шейдейрами и всем форматами вершин чтобы гарантировать что всё реально загружено в видеопамять и когда ваш монстирла вылезет на свет - игра не повиснет на полсекунды в спешке загружая данные которые драйвер решил не загружать. Это даже в официальной документации рекомендуют.

ranka-lee
()
Ответ на: комментарий от ranka-lee

Тем что блендинг реально картой может делаться через шейдер. Включил блендинг, драйвер пропатчил шейдер и перекомпилировал его.

какие-то догадки. а может он сразу в откомпилированный вставляет? или второй после твоего первого пускает?)

st0ke
()
Ответ на: комментарий от ranka-lee

Может. А может и нет. И у вас нет никакого контроля над этим вообще

Поэтому это и называется абстракцией, а Вы что предлагаете?

st0ke
()
Ответ на: комментарий от ranka-lee

Дать мне контроль над всем напрямую. Мне нет дела до абстракций, у меня игра тормозит.

У вас есть 10 разных карт, у всех всё по разному. Как поступите?

st0ke
()
Ответ на: комментарий от st0ke

Да что уж там 10, пусть 100 будет, не у всех конечно всё кардинально отличается, но тем не менее

st0ke
()
Последнее исправление: st0ke (всего исправлений: 1)
Ответ на: комментарий от ranka-lee

Их 3. Nvidia, AMD и Intel.

а ну да, в пределах одной конторы разное поколение карт работает абсолютно одинакого. ну-ну

st0ke
()
Ответ на: комментарий от ranka-lee

Вот потому игры на PC и будут всю жизнь сосать

перед чем? перед пятилетней давности железа в консолях?

st0ke
()
Ответ на: комментарий от st0ke

Да на этого убогого не стоит внимания обращать. Он приверженец идеи

Ein Volk, ein Reich, ein Fuhrer

ещё и фанатик продукции яббла.

daemonpnz ★★★★★
()
Ответ на: комментарий от ranka-lee

Осталось совсем немного времени до смерти DirectX/OpenGL, можно будет программировать графику не через этот анахроничный эмулятор растеризатора.

...сказал он и лопнул

tailgunner ★★★★★
()
Ответ на: комментарий от ranka-lee

обёртка над куском памяти под управлением видеокарты

Вот именно. Кроссплатформенная и достаточно тонкая обертка.

Короче, запили мне бенчмарк и поговорим.

buddhist ★★★★★
()
Ответ на: комментарий от ranka-lee

Можно, но по сути гигантский набор костылей. Например вызовы тьмы разных фукций gl* могут быть заменены одним-двумя memcpy.

Можешь ничего больше не говорить. Матчасть надо подучить, прежде чем вбрасывать.

Kosyak ★★★★
()

Что это их так потревожило-то? :) Хотя лучше поздно, чем никогда.

зы. Новость запили.

Satan_Klaus ★★
()
Ответ на: комментарий от ranka-lee

Текущее поколение консолей персоналки кое-как догнали совсем недавно. Следующее не догонят никогда.

Ты реально идиот или прикидываешься? Уже даже Intel HD перегнали консольки по производительности и это тебе скаже _любой_ разработчик разрабатывающий под консольки.

winddos ★★★
()
Ответ на: комментарий от Reset

Открытие симбиана не привело к смерти андроида:) Хотя сравнение конечно и некорректное.

Behem0th ★★★★★
()
Ответ на: комментарий от ranka-lee

Текущее поколение консолей персоналки кое-как догнали совсем недавно

Ты опять все перепутал. Некст-ген еще не вышел, а графика уже сливает пкшной.

cipher ★★★★★
()
Ответ на: комментарий от Ramen

Даже согласно Steam HW Survey за последние чуть больше года доля графики Intel выросла с <10% до >14%.


лол, так они идут вместе с процессорами intel. Ими не обязательно пользоваться чтобы steam их посчитал.

ritsufag ★★★★★
()
Ответ на: комментарий от ritsufag

лол, так они идут вместе с процессорами intel. Ими не обязательно пользоваться чтобы steam их посчитал.

маловато тогда

st0ke
()
Ответ на: комментарий от Behem0th

Всё то же самое, отличия только в названиях функций.

ranka-lee
()
Ответ на: комментарий от ranka-lee

Ага. Видеокарт на свете всего 3 штуки.

Ага, по вашему Intel/AMD/NVidia? Их видеокарты даже за последние кардинально различаются от серии к серии, не говоря уже про появление всяких SoCов, то ли ещё будет. Так-что далеко не 3 штуки.

Значит, у нас есть куча GPU с общим принципом, но разной реализацией. Что делать? Правильно, придумаем универсальный API доступа к карте, а производитель напишет специфичную реализацию этого API под свой GPU. До этого ещё в 90-х годах додумались.

Поэтому писать специфичный код под конкретный GPU - полный бред, его за нас производитель драйвера OpenGL уже давно написал.

Современный API OpenGL (начиная с версии 3 и ES-вариант) и есть этот самый memcpy, только дополнительно обвешанный всеми необходимыми вспомогательными функциями для упрощения работы с 3d и кросс-платформенности.

Kosyak ★★★★
()
Ответ на: комментарий от ranka-lee

Ага круто, только там речь идет о конкретном GPU (причем мобильном), а именно PowerVR SGX. Это довольно известный своими «прямыми» дровами кусок говн^W кремния.

Kosyak ★★★★
()
Ответ на: комментарий от Kosyak

Точно такие же или аналогичные проблемы есть на множестве иных железок. И OGL /D3D не даёт никакого контроля над такими критическими вещами.

ranka-lee
()
Ответ на: комментарий от Kosyak

Ага, и на выходе получается жуткий оверхид. Большая часть которого про то что какой нибудь CAD 20-и летней давности должен продолжать работать как будто ничего не изменилось.

ranka-lee
()
Ответ на: комментарий от ranka-lee

Вариантов несколько.
1. Костыли в софтовой прослойке. Универсальность, простота программинга, лёгкость добавления новых фич, неэффективная оптимизация софта, тормоза.
2. Костыли в железе. Все производители GPU переходят на единую систему команд, которая со временем разрастается, увеличивается сложность кристаллов, прожорливость, нагрев, неэффективное железо. Снова тормоза.
3. Костыли отсутствуют. Все производители производят одно и то же GPU, но под разными названиями. Оптимизация астрономическая, нет развития, патенты, упадок. Нетормозит.

Suigintou ★★★★★
()
Ответ на: комментарий от ranka-lee

Эти вызовы уходят куда то в GAPI, там проходит разная верификация и преобразования. Потом это опускается куда то в драйвер который тоже делает какие то свои манипуляции. И только потом оно попадает в видеокарту.

и ты утверждаешь, что вся эта работа действительно не нужна? Хочешь руками написать драйвера? :)

хмхм... Открыл Каталист, а там в графе «антиальязинг» есть возможность отключить application-defined и форсированно выставить 2x box multisampling без фильтрации. Хочешь написать?

stevejobs ★★★★☆
()
Ответ на: комментарий от ranka-lee

Их 3. Nvidia, AMD и Intel.

+ обладателей radeon 4* надо приговорить к расстрелу, а обладателей новых карточек подождать годик до начала их поддержки? )))

stevejobs ★★★★☆
()
Ответ на: комментарий от ranka-lee

Большая часть которого про то что какой нибудь CAD 20-и летней давности должен продолжать работать как будто ничего не изменилось.

И какой же жуткий оверхед у современного приложения от наличия legacy-функций в OpenGL?

Kosyak ★★★★
()
Ответ на: комментарий от ritsufag

лол, так они идут вместе с процессорами intel. Ими не обязательно пользоваться чтобы steam их посчитал.

ORLY? Тогда бы у интела было куда больше 14%.

Ramen ★★★★
()
Ответ на: комментарий от ranka-lee

Текущее поколение консолей персоналки кое-как догнали совсем недавно.

Текущее поколение консолей персоналки ощутимо обогнали по графону года 4 назад. Это если смотреть на middle-end железо. Если на топовое, то раньше.

Ramen ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.