Хотелось бы вернуться к многострадальному вопросу об определении реального бъема видеопамяти. Сегодня проверял на GF7200GS/128+TurboCache и ничего хорошего сказать не могу. Реальный объем памяти этой видеокарты не сказал мне почти никто, проверялось в свойствах адаптера, в окне DxDiag, так же использовались вызовы API DirectX в разных вариантах и с разными комбинациях флагов. Все в один голос твердят об 512 мегабайтах с одним драйвером и о 380 мегабайтах -- с другим. Разные методы дают немного разные значения, но всегда все вертится именно вокруг этих чисел. Только RivaTuner смог правильно определить объем памяти, но он в процессе работы позгружает какой-то драйвер, так что не известно из каких глубин какого интерфейса он это вытащил и сможет ли он сделать то же самое с карточкой от ATI или, например, S3...
Примечательно что даже в этих условиях тест проверял положенные 128 мегабайт! Просто хоть все на словах и заявляют об 380/512 мегабайтах, при попытке реально выделить видеопамять, на 128-и метрах все благополучно и заканчивается закономерным выбрасыванием OutOfVideoMemory. В общем пока способ не найден, но у меня есть просьба к обитателям форума, у которых тест систематически завышает объемы видеопамяти прогнать на своих машинах
маленький тест (183 KB) и скопировать сюда результаты его работы (только текст! и не забудьте приложить название и объем памяти вашей карточки). Может с вашей помощью и удасться прояснить ситуацию.
P.S. И на последок хотелось бы немного объяснить полежение дел тем, кто не совсем разбирается в технологиях и думает в таком ключе:
"почему все игры как-то определяют объем и работают нормально, а какой-то там тест не может!". Дело в том, что игры этот объем вообще не определяют, им это не нужно. Они просто выделяют для себя память и им все равно сколько ее там вообще. Если объем памяти меньше чем нужно игре, то возможны такие варианты: игра при очередной попытке выделить память получает отлуп, сообщает об ошибке пользователю и закрывается; игра не замечает недостатка и работает с глюками типа выпавших текстур; игра начинает осмысленно использовать системную память; игра думает что памяти достаточно, хотя на самом деле это "услужливый" драйвер уже давным-давно подсовывает ей системную память под видом локальной. Тест же в отличие от игры выделяет память не для хранения конечного количества данных, а для ее проверки. То есть пытается захватить все что есть. И если ситуация развивается по последнему из описанных выше сценариев, то после заполнения всей видеопамяти тест начинает кушать уже системную, совершенно не подозревая о том, что это уже драйвер "нахимичил" с атрибутами поверхностей и память выделяется из системного пула. И хорошо если драйвер знает меру и ограничивается разумным количеством, но тут уже был показан пример обратной ситуации -- драйвер под видом видеопамяти отдал два гигабайта системной. А так как больше двух гигабайт одна программа под WinXP/32 переварить не может принципиально, тест и завалился от истощения. Вот такая ситуевина в двух словах....