1. Друзья, в это тяжёлое и непонятное для всех нас время мы просим вас воздержаться от любых упоминаний политики на форуме, - этим ситуации не поможешь, а только возникнут ненужные ссоры и обиды. Это касается также шуток и юмора на тему конфликта. Пусть войны будут только виртуальными, а политики решают разногласия дипломатическим путём. С уважением, администрация Old-Games.RU.

    Скрыть объявление
  2. Пожалуйста, внимательно прочитайте правила раздела.
  3. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление

Hard Типичный объём видеопамяти разных эпох

Тема в разделе "Hard & Soft", создана пользователем LANRUS, 13 апр 2021.

?

Какой объём видеопамяти у вас чаще был установлен по отношению к объёму основной ОЗУ?

  1. 1:16

    1 голосов
    5,9%
  2. 1:12

    0 голосов
    0,0%
  3. 1:8

    14 голосов
    82,4%
  4. 1:6

    0 голосов
    0,0%
  5. 1:4

    7 голосов
    41,2%
  6. 1:3

    0 голосов
    0,0%
  7. 1:2

    2 голосов
    11,8%
  8. 1:1.5

    0 голосов
    0,0%
  9. 1:1

    0 голосов
    0,0%
Можно выбрать сразу несколько вариантов.
  1. LANRUS

    LANRUS

    Регистрация:
    15 сен 2010
    Сообщения:
    4.621
    Никакого практического интереса в этой теме не вижу, просто любопытная статистика. Я вспомнил собственный опыт, и проявилась забавная деталь: у меня это соотношение чаще всего составляло 1:8.

    386DX - 512KB:4MB DOS6.22, Win3.11
    Pentium - 2MB:16MB Win95
    Pentium II - 16MB:96/128MB Win98, WinNT4.00
    AXP - 16MB:256MB Win98, WinXP
    AXP - 64MB:512MB Win98, WinXP
    P4 - 128MB:1GB Win98, WinXP
    PD/C2D - 256MB:512MB Win98; 512MB:2GB WinXP, Win7x64
    A64 - 512MB:4GB Win7x64
    C2Q - 1GB:8GB Win8.1x64
    C2Q - 2GB:8GB Win8.1x64
    Ryzen - 3/4GB:32GB Win10x64

    Как видно, колебалось от 1:16 до 1:2, но типично всегда было и есть 1:8.
    Просьба всем отметиться в небольшом опросе, до 2 ответов.

    И ещё интересный вопрос возник. Вот здесь уже практический интерес. С шинами PCI и PCI-E всё понятно, во втором случае подгрузка данных из ОЗУ дело уже давно отработанное, а в первом случае находится в зачаточном состоянии (помимо медленной шины ещё и ни одного запроса без участия ЦПУ). Самое интересное - как это работало в AGP. Вопрос такой: во сколько раз минимум ОЗУ должна превосходить видеоОЗУ, чтобы было нормальное кэширование; и вторая часть вопроса - каков должен быть оптимальный размер апертуры AGP по отношению к размеру видеоОЗУ и должен ли он коррелироваться пользователем в большую/меньшую сторону в зависимости от соотношения размеров ОЗУ и видеоОЗУ.

    Другими словами, нагляднее:
    Видео 128мб. Оптимальная апертура AGP? (в абстракции от основной)
    Видео 128, основная 1024 или видео 128, основная 256. Оптимальная апертура AGP в обоих случаях одинакова или нет? Где лучше увеличить, где уменьшить?
     
  2. Uka

    Uka

    Переводчик

    Регистрация:
    21 окт 2012
    Сообщения:
    30.001
    Любопытно...
    Чаще всего было 1:4 (от 256КБ/1МБ у первого моего ПК до 2ГБ/8ГБ у последнего), но 1:8 и 1:16 тоже нередко встречалось.
     
  3. radical1010

    radical1010

    Регистрация:
    3 сен 2018
    Сообщения:
    3.841
    Я помню, рекомендовали ставить апертуру AGP аналогичной размеру видеопамяти или вдвое больше (если памяти хватало)
    Но это было во времена 64-128МБ памяти на типичной видеокарте, 256МБ видеопамяти уже считали "избыточной" и "ненужной"
     
  4. LANRUS

    LANRUS

    Регистрация:
    15 сен 2010
    Сообщения:
    4.621
    Интересно. А что значит "если хватало"? Т.е. можно было при 16 видео и 32 ОЗУ всю память под апертуру?
     
  5. TBAPb MIA

    TBAPb

    Legacy

    Регистрация:
    26 сен 2005
    Сообщения:
    2.073
    TechPowerUp

    В общем и целом - никакой реальной разницы.
    Потому что если набортной памяти нехватало - то идёт подгрузка с системной, что медленно (но быстрее чем с диска, ессно).
    Если началась подгрузка - просирается производительность (она и так скорее всего уже была никакой, а тут ещё и это), так что без разницы, сколько было выделенно.
    Можно, конечно, найти крайний случай, когда игрушке нужно больше набортной памяти чем есть, AGP Aperture выделенно в минимум, но при этом всё остальное быстро (нет завала на геометрию, проц, движок не ждёт подгрузки ресурсов) - да, тогда можно будет намерять какую-либо разницу.
    Единственное что я приблизительно могу предположить, это что-то вроде GTA3/VC на несбалансированном конфиге (убогая видюха с минимум памяти, при достаточном объёме RAM и быстром проце).
    Например 128MB VRAM, 2GB RAM. Хотя даже 512Mb RAM обычно хватало с головой на всё и половина памяти была пустая. Я, конечно, могу звиздеть, но на вскидку я не припинаю случаев когда мне не хватало памяти даже на TUSL2-C (а стояло 512).
     
  6. TheMadLynx

    TheMadLynx

    Хелпер

    Регистрация:
    9 июн 2015
    Сообщения:
    7.436
    Самое главное, что нужно знать об апертуре:
    Вообще, здесь написано более кратко и понятно, чем на течповерапе: AGP Aperture Size(Graphics Aperture Size, Graphics Win Size, IGD Aperture Size)
     
    Колючий нравится это.
  7. radical1010

    radical1010

    Регистрация:
    3 сен 2018
    Сообщения:
    3.841
    Тогда типичным объемом памяти было 128-256МБ, при 64-128МБ видеопамяти так и получалось))
    Но да,
    Программы, типа 3дмарка, например, очень заметно положительно реагируют на увеличение размера апертуры. На поздних AGP платах на последних виашных чипсетах можно было гиг поставить или даже два (в последнем случае уже разницы с гигом не было)
     
  8. TakedaSun

    TakedaSun

    Регистрация:
    27 дек 2009
    Сообщения:
    884
    В моем понимании принцип одинаков, что для PCI, что для PCI-E, разница только в скорости. В случае AGP есть отличия, часть ОЗУ становилась продолжением видеопамяти, максимальный размер выделяемый из ОЗУ памяти регулировался параметром AGP Aperture Size. Резервирование динамическое, по мере надобности, можно выставить при 64 МБ ОЗУ размер апертуры на те же 64МБ, проблем не будет. (в играх актуальных для таких объемов ОЗУ, но если запустите FarCry - будут проблемы:D).
    --- добавлено 15 апр 2021, предыдущее сообщение размещено: 14 апр 2021 ---
    Это зависит от игр. Например, если игра использует меньше 128 МБ видеопамяти (1-100МБ), то можно установить размер апертуры минимальный, проблем не будет. Если игра начнет использовать больше видеопамяти, то начнутся тормоза (или игра вылетит с ошибкой).

    Такое иногда наблюдал на i815, там размер AGP Aperture Size ограничен 64МБ, видеокарта то же на 64Мб - в сумме 128МБ, а игра использовала до 160 Мб видеопамяти, вот получались провалы в производительности.
     
  9. TheMadLynx

    TheMadLynx

    Хелпер

    Регистрация:
    9 июн 2015
    Сообщения:
    7.436
    Ну как же так? Даже в интернет лезть не надо - парой постов выше написано, что размер апертуры, это не объём в мегабайтах, а диапазон адресов, который используется драйвером. Формула, по которой вычисляется возможный объём доступной системной памяти для устройства AGP, тоже написана парой постов выше. Зачем продолжать писать ересь про 64+64=128?
     
  10. BrainRipper

    BrainRipper

    Регистрация:
    1 ноя 2009
    Сообщения:
    9.437
    @TheMadLynx, по опыту использования RivaTuner и ATI Tray Tools, а также Sandra объём памяти для текстур определяется как сумма памяти на видеокарте и AGP Aperture.
     
    TakedaSun нравится это.
  11. TheMadLynx

    TheMadLynx

    Хелпер

    Регистрация:
    9 июн 2015
    Сообщения:
    7.436
    @BrainRipper, не помню, что там у ати, но рива тюнер показывала разные странные цифры даже если PCI-видяха воткнута в мамку без AGP. А ведь по такой логике рассуждая, там строго ноль должен быть лишнего, по сравнению с набортным количеством видеопамяти видяхи. Получается, что "апертура" сама задавалась из пустоты?
    --- добавлено 15 апр 2021, предыдущее сообщение размещено: 15 апр 2021 ---
    А, всё понятно, дальше вопрос можно не обсуждать - я уже нашёл примеры, когда эверест, DXDiag, Catalyst и прочее показывают, например, 256 МБ, и при этом же ATI Tray Tools рисует 512. =)
     
  12. TakedaSun

    TakedaSun

    Регистрация:
    27 дек 2009
    Сообщения:
    884
    Возможно это как то связано с этим багом Soft - Баги в драйверах NVidia
    На intel делит пополам, на via доступна вся память.



    Размер AGP Aperture Size 256MB, чипсет Via

    8_6.png

    Если поставить 128 MB, игра превращается в пошаговую стратегию.

    Могу точно сказать, если игра выходит за пределы параметра Total/Free Texture Memory (Sandra), то начинаются жуткие тормоза, либо тупо вылетает с ошибкой.
     
    LANRUS нравится это.
  13. TheMadLynx

    TheMadLynx

    Хелпер

    Регистрация:
    9 июн 2015
    Сообщения:
    7.436
    Да, с этой памятью всё от драйвера GART зависит. Каждый производитель чипсетов писал свой собственный. Видимо, у них ещё и разное представление было о том, что такое "мегабайт апертуры".
     
  14. BrainRipper

    BrainRipper

    Регистрация:
    1 ноя 2009
    Сообщения:
    9.437
    Под Win98.
     
  15. TakedaSun

    TakedaSun

    Регистрация:
    27 дек 2009
    Сообщения:
    884
    Согласен.

    Это интересно, можно будет проверить (как появится свободное время)

    Вот еще ветка обсуждений на тему работы AGP (Accelerated Graphics Port)
     
  16. TBAPb MIA

    TBAPb

    Legacy

    Регистрация:
    26 сен 2005
    Сообщения:
    2.073
    Сомнительно.

    В спеке вообще нет такой формулы, есть для GART.

    http://www.playtool.com/pages/agpcompat/agp30.pdf

    5.3 AGP Graphics Aperture

    In an AGP3.0 system, driver software and an AGP3.0 device can share large amounts of data through buffers placed in system RAM. A large buffer requires many host processor virtual pages; although host system software ensures that these pages appear contiguous to host software (virtually contiguous). It is often difficult for system software to map these virtual pages to contiguous physical pages in system memory (physically contiguous). Thus, in the absence of any sort of remapping mechanism, these pages appear non-contiguous to the rest of the system and require scatter/gather hardware in each device that will access the buffers to deal with the discontinuity.

    Like AGP, AGP3.0 provides a solution to this problem in the form of an AGP Graphics aperture. The AGP aperture is a physically contiguous range of the physical address space where AGP3.0 Master accesses directed to it are re-mapped (translated) to potentially physically non-contiguous pages. AGP3.0 Master translation is accomplished through the AGP Graphics Aperture Re-mapping Table (GART). For the purposes of translation, the AGP aperture range is split into a series of aligned regions, each such region is termed an AGP aperture page. Each AGP aperture page has a corresponding translation in the GART

    Figure 5-2: AGP Graphics Aperture Model

    In general, system software places the AGP aperture above the top of the memory (above the highest byte of actual physical RAM in the system) in a hole that does not conflict with memory-mapped I/O registers of system devices. AGP3.0 supports AGP3.0 aperture sizes of 4MB and larger; each core-logic implementation indicates which AGP3.0 aperture sizes are supported through the APSIZE register

    5.3.1 AGP Aperture Page Size

    System software populates (maps) each AGP aperture page with a same-sized, naturally aligned region from physical memory. Note that there need be no correspondence between the host processor page size and the AGP aperture page size used by core logic. The only requirement is that each populated AGP aperture page translates to a fully allocated and resident physical memory region that is of equal size and is naturally aligned.


    The GART must reside in a physically contiguous memory. The size of the entire GART is:

    GART_Size = (Aperture_Size / Aperture_Page_Size) * 2 ^ (2 + AGPSTAT.gart64b)

    7. Software may locate the GART anywhere within physical RAM addresses; the GART cannot be located in Memory-Mapped I/O space. The core-logic cannot place constraints on where the GART can be located within physical RAM addresses.

    Т.е. при Aperture_Page_Size = 4Kb размер GART будет, в Мб:
    Код:
    #
    16Mb, 64Mb, 128Mb, 256Mb, 1Gb | % {
        'Aperture Size: {0} Mb, GART: {1} Mb' -f ($_/1Mb), (($_/4kb * ([math]::Pow(2,10))) / 1Mb)
        }
    Aperture Size: 16 Mb, GART: 4 Mb
    Aperture Size: 64 Mb, GART: 16 Mb
    Aperture Size: 128 Mb, GART: 32 Mb
    Aperture Size: 256 Mb, GART: 64 Mb
    Aperture Size: 1024 Mb, GART: 256 Mb
    
    Итого:

    AGP Aperture - это окно через которое AGP карточка может быстро меняться с оперативкой системы данными.[1]

    Размер "окна" определяет насколько большой кусок оперативной памяти сможет видеть карта.
    Вместе с размером окна растёр таблица "виртуальный адрес AGP Aperture"=>"физический кусок памяти".
    Размер AGP Aperture может быть любой, т.к. это чисто виртуальная фигня, поскольку память под реальное использование выделяется на ходу.
    Но с увеличением AGP Aperture растёр размер GART, а вот он уже уже фиксированный и должен быть выделен непрерывным кусокм в оперативной памяти, в связи с чем при острой нехватке оперативки (например Aperture_Page_Size выставлен в 256Мб, а по факту в системе всего 64-128Мб памяти) может наступить труднодиагностируемая жопа.

    [1] Если есть понимание что такое AWE и PAE (которое не карточка, а доступ к памяти > 4Gb на 32битных системах), то это почти оно.

    ЗЫ если AGP Aperture слишком маленький - то движку придётся за прорисовкой текстуры сначала сходить на диск, вычистить в AGP Aperture кусок необходимого размера, загрузить в него текстуру, прорисовать. Повторить для всех остальных непоместившихся текстур. Каждый кадр.
     
    TheMadLynx нравится это.
  17. TheMadLynx

    TheMadLynx

    Хелпер

    Регистрация:
    9 июн 2015
    Сообщения:
    7.436
    @TBAPb, в первых спецификациях, где интел ещё писал A.G.P., вообще ничего про апертуру не написано, а про трансляцию адресов лишь чуть-чуть. Про GART в целом сказано, что каждый производитель извращается с его реализацией сам как хочет. Требования предъявляются только к унификации API самого драйвера.
    Так может быть только у адаптеров типа i740 (i752), которые всегда обработку текстур выполняют в системной памяти через этот самый механизм трансляции. Все остальные нормальные видеокарты, насколько мне известно, всё делают в локальной видеопамяти, а к оперативе обращаются только при её нехватке. Поэтому смотреть на цифры апертуры стоит только с двух позиций:
    1) основная видеокарта дохлая и не может поместить в себя все нужные текстуры для какой-либо тяжёлой игры, запущенной в высоком разрешении и с высоким качеством;
    2) мы не занимаемся фигнёй из пункта выше, а запускаем игры в высоком качестве на соответствующих им адаптерах, или понижаем качество и разрешение для слабой видяхи - тогда имеет смысл поставить апертуру в минимальное значение, чтобы не занимать ОЗУ ненужным GART-ом и минимизировать возможные конфликты кривых драйверов оборудования (актуально для Win9x), которые могут сделать прямое обращение к занятому трансляцией диапазону адресов без согласования с GART-драйвером и завалить всё в синий экран.

    Собственно, с некоторыми уточнениями и дополнениями, последнее является одной из состовляющей "нелюбви" Win9x к видеокартам с более чем 512 МБ видеопамяти - в адресном пространстве остаётся очень мало места для трансляции и портов другого оборудования.
     
  18. BrainRipper

    BrainRipper

    Регистрация:
    1 ноя 2009
    Сообщения:
    9.437
    @TheMadLynx, с минимальной апертурой не все драйвера работают.
     
    TheMadLynx нравится это.
  19. TakedaSun

    TakedaSun

    Регистрация:
    27 дек 2009
    Сообщения:
    884
    У видеокарты S3 Savage4 этим параметром можно управлять вручную. Есть вариант сделать как у i740, можно запретить использовать GART и брать текстуры только из локальной памяти или просто оставить управление этим параметром игре. В драйверах так же есть возможность управлять размером GART.

    Еще этим механизмом можно вручную управлять в игре Unreal Tournament, можно сделать как у i740 или использовать текстуры только из локальной видеопамяти.
     
    TheMadLynx нравится это.
  20. TBAPb MIA

    TBAPb

    Legacy

    Регистрация:
    26 сен 2005
    Сообщения:
    2.073
    Угу. По полному названию GART гуглится патент, в котором объясняется, что в железе это делать слишком дорого, поэтому проще минипорт написать. Учитывая, что тогда ещё были живы не-х86 архитектуры, что вполне закладывалось наличие нескольких AGP слотов, то оставить реализацию и стандартизировать API - правильный подход.

    Именно вариант нехватки памяти я и описал.

    Угу. Или в разрешении и битности съедающими здоровенный кусок VRAM.

    И ловить непонятки в некоторых играх/приложениях, которым будет иногда нехватать VRAM. Собсно размер GART, особенно на 32 битной адресации памяти (AGPSTAT.gart64b), не так уж и велик даже для memory constrained конфигураций (если конечно я правильно его считаю):

    Код:
    #
    16Mb, 64Mb, 128Mb, 256Mb, 1Gb | % {
        'Aperture Size: {0} Mb, GART: {1} Mb' -f ($_/1Mb), (($_/4kb * ([math]::Pow(2,6))) / 1Mb)
        }
    Aperture Size: 16 Mb, GART: 0.25 Mb
    Aperture Size: 64 Mb, GART: 1 Mb
    Aperture Size: 128 Mb, GART: 2 Mb
    Aperture Size: 256 Mb, GART: 4 Mb
    Aperture Size: 1024 Mb, GART: 16 Mb
    
    Поэтому совсем в минималку его ставить опять-таки есть смысл, только если на компе играть не будут, но будут активно жрать память.

    ЗЫ есть ещё третий вариант: в принципе VRAM хватает, но - иногда не хватает. Например идёт загрузка сцены, или вообще у нас не игрушка и игровая видяха, а Quadro и какой-нить 3ds MAX. В этом случае опять-таки больший размер Aperture даст плюшек по производительности как максимум, не даст аварийно вывалиться если чего-то не хватило - как минимум.
     
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление