Видеокарты Nvidia Ampere официально получат поддержку Resizable BAR

Обсуждение статей и новостей сайта
Автор
Повідомлення
Dr_Werdenhoff
Junior
Аватар користувача
Звідки: Schwäbisch Gmünd

Повідомлення

IvanCh: П.s на платах b450 та x470 з процесорами 5000 серії працювати буде.
На 3000 тоже работает и приносит результаты. Пруф.

Технология поддерживается на основе функции full-rate _pdep_u32/64 шины PCI-e. У 5000-й серии её поддержка реализована аппаратно, а у 3000-й на уровне эмуляции в микрокоде AGESA.
IvankoB
Member

Повідомлення

Странный подход, жа еще с нынешним дефицитом :D
Раз есть в PCI-e 3.0+, тогда не е.. мозги и добавьте к дровам также на паскали и тюринги
Dr_Werdenhoff
Junior
Аватар користувача
Звідки: Schwäbisch Gmünd

Повідомлення

IvankoB
Так там ещё в биосе надо что-то допилить. А перепиливать биосы уже снятым или вскоре снимаемым с производства девайсам никто не будет.
IvankoB
Member

Повідомлення

А 2000 серия в очередной раз подтвердила статус проходняка.
Точнее проходные драйвера для паскалей и тюрингов от НВИДИи. Тупо хотелка НВИДИи, которая будет отменена из-за возмущения юзеров. :laugh:

Отправлено спустя 4 минуты 22 секунды:
Так там ещё в биосе надо что-то допилить. А перепиливать биосы уже снятым или вскоре снимаемым с производства девайсам никто не будет.
Это уже тема материнок и процов. В550 и B570, а также R3xxx (немудреная эмуляция в БИОСе) и R5xxx (напрямую) эти фишки тянут из коробки, дело за дровами для видях. AMD (как изобретелать и популяризатор фишки) включила фишку в дрова сразу, а Nvidia зачем-то решила повы..ся :laugh:
DuckRider
Member
Аватар користувача

Повідомлення

Sanьka:Тот случай когда АМД первая смекнула сделать хайповую фичу и теперь другие должны делать "как АМД" :up:

А 2000 серия в очередной раз подтвердила статус проходняка.
Эм, этой фиче разве не около 20 лет?
Dark_Diver
Member
Аватар користувача

Повідомлення

О, производители, наконец-то, сподобились прочитать спецификацию и реализовать то, что там утверждено?
То, что должно было быть реализовано с самого первого устройства с шиной PCIe v3.0?

А насчёт самой технологии - представьте себе всю видеопамять ГПУ, ну, к примеру, в виде шахматной доски.
Вы, к примеру, драйвер, и вам нужно во время работы обращаться к разным местам этой памяти, т.е. к различным клеткам. Грузить в них текстуры, например, обрабатывать данные или ещё что.

Но в текущих условиях вы этого не можете. У вас есть маленькое окошко, через которое вы можете что-то делать с видеопамятью.
И вы можете легко и просто, ни на что не отвлекаясь, работать с видеопамятью только в рамках этого "окошка". А если вам понадобилось обратиться к памяти в другом месте, то вам нужно прервать вашу задачу, передвинуть окно в другое понадобившееся место, и только потом продолжить выполнение основной задачи.
И так каждый раз - чтобы обращаться к памяти в разных местах, вам приходится делать дополнительные телодвижения.

Это не удобно, но когда-то так пришлось сделать, из-за аппаратных ограничений. И сделали. Неудобно, тратится дополнительное время, зависящее от выполняемой задачи и того, насколько часто вам нужно обращаться в разные места видеопамяти - но всё работает, в итоге.

Но время прошло, оказалось возможным избавиться от этих костылей - но ведь это надо переписать и отладить уже работающую логику. А зачем, если всё и так работает? Чтобы потратить ресурсы (время=деньги) на разбирательство в старом, работающем, коде, его переписывание и вылавливание неизбежно внесённых багов? А стоит ли оно того? Каков будет итоговый выигрыш?

А АМД решили попробовать избавиться от этих костылей и посмотреть, каков будет выигрыш. Ведь в результате "костылей" и лишних телодвижений получится меньше, логика проще.

Грубо говоря, можно расширить "окошко" до размера "всей доски" - всей видеопамяти, и не отвлекаться на перенастройку этого окошка, а просто работать с видеопамятью, не отвлекаясь, независимо от текущего адреса.
Теперь нужно делать меньше лишней работы, но выигрыш зависит от конкретной задачи, игры, драйвера. Если во время выполнения требовалось часто обращаться к разным местам видеопамяти, то выигрыш будет ощутим (порядка 10%, как оказалось - и это очень много, честно говоря, я думал, будет в разы меньше), если не очень часто - то его может быть практически не заметно.
FelixJR
Member
Аватар користувача
Звідки: Житомир

Повідомлення

Первый шаг сделан, надеюсь, что на Gen 3 все таки будет работать.
спойлер
IMG_20210111_202829043.jpg
Maxiler
Member
Аватар користувача

Повідомлення

беру! только продайте :lol: :lol: :lol:
IvankoB
Member

Повідомлення

FelixJR:Первый шаг сделан, надеюсь, что на Gen 3 все таки будет работать.
спойлер
IMG_20210111_202829043.jpg
Аппаратная поддержка для этой технологии есть (причем даже для Ryzen 1xxx) - дело только в человеко-часах на адаптацию драйверов и возможно БИОСов материнок и PCI-E устройств.
https://videocardz.com/newz/asus-and-ms ... -zen2-cpus
The support is also coming to Ryzen 3000 “Matisse” CPUs which are based on Zen2 architecture:
...
ASUS confirms that even the first generation of Ryzen CPUs will have the ReSize BAR feature enabled, in this case on PRIME B450-PLUS motherboard:ASUS confirms that even the first generation of Ryzen CPUs will have the ReSize BAR feature enabled
...
Earlier this week a story at Igors’LAB has been published that NVIDIA is indeed also working on an alternative to AMD SAM technology. Igor claims that there are discussions going internally on ‘whether and when’ should the GeForce RTX 30 series support the technology. He did not confirm if any final decisions have been made, but ever since the company confirmed it is evaluating the possibility of enabling such technology, it would have been a marketing disaster if Resize BAR would not work on NVIDIA GPUs at some point.
Meanwhile, AMD has not made any public statements in regard to potential SAM support on older Radeon GPUs.
:up:
АМД тоже не рвется тратить человеко-часы на адаптацию не-мэйнстсримовых девайсов, но куда АМД денется, запилит как миленькая :D

Отправлено спустя 5 минут 48 секунд:
Пояснения к технологии от M$
https://docs.microsoft.com/en-us/window ... ar-support
Resizable BAR support

It is typical today for a discrete graphics processing unit (GPU) to have only a small portion of its frame buffer exposed over the PCI bus. For compatibility with 32bit OSes, discrete GPUs typically claim a 256MB I/O region for their frame buffers and this is how typical firmware configures them.
For Windows Display Driver Model (WDDM) v2, Windows will renegotiate the size of a GPU BAR post firmware initialization on GPUs supporting resizable BAR, see Resizable BAR Capability in the PCI SIG Specifications Library.
A GPU, supporting resizable BAR, must ensure that it can keep the display up and showing a static image during the reprogramming of the BAR. In particular, we don't want to see the display go blank and back up during this process. It is important to have smooth transition between the firmware displayed image, the boot loader image and the first kernel mode driver generated image. It is guaranteed that no PCI transaction will occur toward the GPU while the renegotiation is taking place.
For the most part this renegotiation will be invisible to the kernel mode driver. When the renegotiation is successful, the kernel mode driver will observe that the GPU BAR has been resized to its maximum size to expose the entire VRAM of the discrete GPU.
Upon successful resizing, the kernel mode driver should expose a single, CPUVisible, memory segment to the video memory manager. The video memory manager will map CPU virtual addresses directly to this range when the CPU need to access the content of the memory segment.
Отправлено спустя 21 минуту 38 секунд:
Суть этой технологии в том,что проц видит видеопамять как часть своей памяти, напрямую с ней манипулирует, и после выполнения своей порции вычислений для нужд видяхи сообщает видяхе где (в видяшной VRAM, а не системной RAM !) лежать результаты этих вычислений
The processor in gaming performs certain computing tasks necessary for the execution of the game. Not everything is done by the GPU. To date the processor could load up to 256MB in VRAM and the rest went to the system RAM.
When the GPU requires the information stored in RAM, it has to tell the processor that it needs 'x' computation. The processor fetches it and hands it over to the GPU. A process that requires a certain time, or what is the same, generates a latency.
Using Resizable BAR, all Tasks performed by the processor are stored in the VRAM. The processor loads the data into the VRAM and tells you where this data is. So the GPU has them accessible at all times when it needs them. Therefore, we eliminate the latency generated by asking the processor for the calculation, to look for it in RAM and to deliver it to the GPU.
Makc1968UA
Member
Аватар користувача
Звідки: Донбасс

Повідомлення

Yaroslav:на intel-ах теж потроху з'являється.
На мою материнку MSI MPG Z390 Gaming Pro Carbon также пришло обновление прошивки с поддержкой Resizable BAR. Статус беты у прошивки, но тем не менее. Осталось дело за малым - дождаться появления карт 3000-й серии по нормальным ценникам.
Firebrand
Member
Аватар користувача
Звідки: Киев

Повідомлення

neo89skynet:Зажопили технологию для тюрингов - Жадины!!
p.s. обменяю 2070s на 3060ti - я серьёзно ) :beer:
это очень по хуанговски, классика , так сказать.
Yaroslav
Member
Аватар користувача
Звідки: Київ

Повідомлення

Makc1968UA:
Yaroslav:на intel-ах теж потроху з'являється.
На мою материнку MSI MPG Z390 Gaming Pro Carbon также пришло обновление прошивки с поддержкой Resizable BAR. Статус беты у прошивки, но тем не менее. Осталось дело за малым - дождаться появления карт 3000-й серии по нормальным ценникам.
А вот это уже интересно :beer: . Я думал "кофейники" остались за бортом.
Відповісти