Объем оперативной памяти. Мечты и реалии
В целом эта статья предназначена для людей, неравнодушных к современным компьютерным играм, так как чаще всего именно они подвержены многочисленным апгрейдам в связи с тормозами очередного новомодного хита от id Software и прочих. В данной статье не будут раскрыты причины ресурсоемкости новых операционных систем типа Windows 2000, так как там происходят процессы немного другого рода. Это тема другой статьи. Таким образом, в ходе своих дальнейших рассуждений я попытаюсь найти тот разумный минимум для игромана в плане объема оперативной памяти и доказать свою точку зрения.
Все современные игровые приложения обрабатывают огромные массивы информации: просчитывают изменение 3D моделей во времени, сами 3D модели, правила наложения текстур и производят отрисовку полигонов, динамическое освещение, физические модели - и это всего лишь одна сотая того, что происходит за время построения сцены на вашем мониторе. А таких сцен тысячи... Причем все это должно храниться в оперативной памяти для быстрого доступа. В результате покупка нового акселератора сводится на нет жуткими подгрузками уровней и тормозами во время игры. Конечно, среди вас обязательно найдется человек, который скажет: "Не все так страшно, как это демонстрируют. У меня и на 64Мб Q3-A нормально идет...". Но нормально - нехорошо, три не пять. А нам надо на пять и не меньше! Иначе к чему все эти новомодные GeForce и Pentium III (GeForce2 GTS и Athlon - кому что больше нравится).
Архитектура многих игр такова, что при наличии даже 64Мб оперативной памяти игра не загружает весь уровень в оперативную память, а осуществляет его динамическую подгрузку. Разработчики не обделенные люди, на их компьютерах стоит как минимум 256 ОЗУ, а оптимизация на малые объемы оперативной памяти в большинстве случаев не производится. Возьмем, к примеру, систему: Celeron 488 (66,6х75), 32Мб, материнская плата Chaintech 6BTA3, винчестер Quantum 8.4Gb Fireball lct, Riva TNT2 M64 16Mb. Эта система не является примерно показательной, но все же не так плоха. Забегая наперед, скажу, что очень даже неплоха при установке 128Мб.
Как видно из таблицы, производительность при увеличении объема оперативной памяти возросла почти в 2 раза. Конечно, Quake при 32Мб не запускают, но это сделано для яркости восприятия. Так что же происходит при 32 Мб?
Работа большинства компьютерных игр основывается на передаче данных с жесткого диска в оперативную память. Самой же Windows9х/Millenium требуется ~16Мб для размещения своего ядра. На все остальное остается примерно еще 16Мб. Если, к примеру, уровень занимает 90 Мб, то в оперативной памяти будет только 16 из них. Таким образом, по мере продвижения игрока по уровню будет производиться обмен данными и процесс подачи все новых порций в периодически освобождающиеся 16Мб (процесс перезаписи). В зависимости от скорости вашего жесткого диска (и системы в целом) процесс передачи может иметь различную скорость, что в различной мере и скажется на геймплее. Для моделирования красивых и реалистичных уровней технология страничной передачи данных (paging) просто необходима. Но при любых технологиях для современных компьютерных игр 32 Мб необходимы как самый минимум.
Теперь действует правило: больше памяти - лучше. Ибо с каждым новым добавленным мегабайтом рывков становится все меньше, а процесс игры все интереснее. В определенный момент игра поместит весь уровень в оперативную память, и процесс обмена данными с жестким диском происходить не будет. Для самых больших карт в Quake 3 Arena это примерно 128Мб. Далее на производительность влияют только процессор, частота системной AGP шины, частота памяти и видеокарта. В моем случае их мощности хватило на 60 fps. Таким образом, можно сделать вывод: время загрузки будет гораздо меньшим, если все поместится в ОЗУ, и Windows не придется делать свопинг. А еще некоторые программы и карты резервируют для себя память и отнимают необходимое количество у игры, что будет не так сказываться при наличии 128Мб.
И еще, сейчас становится модным использовать аппаратное сжатие текстур. В ближайшие полгода размеры используемых текстур должны стать гораздо больше, и стоит задуматься над рекомендацией компании S3 - карты для хорошей работы с сжатыми текстурами должны быть установлены на систему с 128Мб памяти и больше.
Несколько слов о ценах. Сейчас (22 мая 2000 г.) у нас в Беларуси можно купить SDRAM PC-100 128Mb Acorp за 110 у.е. Если учесть, что вы апгрейдите объем оперативной памяти не с нуля, то еще необходимо вычесть стоимость стоящих у вас "мозгов". Все не так уж и плохо. Это одно из лучших капиталовложений, так как соотношение цена/производительность максимально выгодно.
Надеюсь, мои доказательства вы сочли как вполне убедительные. Причем необходимо отметить, что 128Мб - это тот разумный минимум, о котором я заикался в начале своей статьи. Если у вас есть деньги на приобретение большего объема не в ущерб остальной системе (я имею в виду, когда с производительностью процессора и видеокарты все нормально), то делайте это незамедлительно. Аппетит современных игрушек все растет, и скоро 128 Мб уже будет мало для комфортабельной игры на все пять баллов. Не верите? А зря... Совсем недавно на большинстве домашних компьютеров стояло по 1Мб оперативки, а размер винчестера едва доходил до 128Мб, 33Mhz- звучало гордо! А было это всего лет шесть назад. Кто знает, что будет еще через шесть? Прогресс идет семимильными шагами. Рост вычислительной мощности компьютеров не пропорционален во времени. Так что будь что будет. Все, что ни делается, - все к лучшему!
Дмитрий Пирожков
Все современные игровые приложения обрабатывают огромные массивы информации: просчитывают изменение 3D моделей во времени, сами 3D модели, правила наложения текстур и производят отрисовку полигонов, динамическое освещение, физические модели - и это всего лишь одна сотая того, что происходит за время построения сцены на вашем мониторе. А таких сцен тысячи... Причем все это должно храниться в оперативной памяти для быстрого доступа. В результате покупка нового акселератора сводится на нет жуткими подгрузками уровней и тормозами во время игры. Конечно, среди вас обязательно найдется человек, который скажет: "Не все так страшно, как это демонстрируют. У меня и на 64Мб Q3-A нормально идет...". Но нормально - нехорошо, три не пять. А нам надо на пять и не меньше! Иначе к чему все эти новомодные GeForce и Pentium III (GeForce2 GTS и Athlon - кому что больше нравится).
Архитектура многих игр такова, что при наличии даже 64Мб оперативной памяти игра не загружает весь уровень в оперативную память, а осуществляет его динамическую подгрузку. Разработчики не обделенные люди, на их компьютерах стоит как минимум 256 ОЗУ, а оптимизация на малые объемы оперативной памяти в большинстве случаев не производится. Возьмем, к примеру, систему: Celeron 488 (66,6х75), 32Мб, материнская плата Chaintech 6BTA3, винчестер Quantum 8.4Gb Fireball lct, Riva TNT2 M64 16Mb. Эта система не является примерно показательной, но все же не так плоха. Забегая наперед, скажу, что очень даже неплоха при установке 128Мб.
Объем оперативной памяти | Quake3 Arena, 800x600 Normal |
32 | 31.2 |
128 | 59.6 |
Как видно из таблицы, производительность при увеличении объема оперативной памяти возросла почти в 2 раза. Конечно, Quake при 32Мб не запускают, но это сделано для яркости восприятия. Так что же происходит при 32 Мб?
Работа большинства компьютерных игр основывается на передаче данных с жесткого диска в оперативную память. Самой же Windows9х/Millenium требуется ~16Мб для размещения своего ядра. На все остальное остается примерно еще 16Мб. Если, к примеру, уровень занимает 90 Мб, то в оперативной памяти будет только 16 из них. Таким образом, по мере продвижения игрока по уровню будет производиться обмен данными и процесс подачи все новых порций в периодически освобождающиеся 16Мб (процесс перезаписи). В зависимости от скорости вашего жесткого диска (и системы в целом) процесс передачи может иметь различную скорость, что в различной мере и скажется на геймплее. Для моделирования красивых и реалистичных уровней технология страничной передачи данных (paging) просто необходима. Но при любых технологиях для современных компьютерных игр 32 Мб необходимы как самый минимум.
Теперь действует правило: больше памяти - лучше. Ибо с каждым новым добавленным мегабайтом рывков становится все меньше, а процесс игры все интереснее. В определенный момент игра поместит весь уровень в оперативную память, и процесс обмена данными с жестким диском происходить не будет. Для самых больших карт в Quake 3 Arena это примерно 128Мб. Далее на производительность влияют только процессор, частота системной AGP шины, частота памяти и видеокарта. В моем случае их мощности хватило на 60 fps. Таким образом, можно сделать вывод: время загрузки будет гораздо меньшим, если все поместится в ОЗУ, и Windows не придется делать свопинг. А еще некоторые программы и карты резервируют для себя память и отнимают необходимое количество у игры, что будет не так сказываться при наличии 128Мб.
И еще, сейчас становится модным использовать аппаратное сжатие текстур. В ближайшие полгода размеры используемых текстур должны стать гораздо больше, и стоит задуматься над рекомендацией компании S3 - карты для хорошей работы с сжатыми текстурами должны быть установлены на систему с 128Мб памяти и больше.
Несколько слов о ценах. Сейчас (22 мая 2000 г.) у нас в Беларуси можно купить SDRAM PC-100 128Mb Acorp за 110 у.е. Если учесть, что вы апгрейдите объем оперативной памяти не с нуля, то еще необходимо вычесть стоимость стоящих у вас "мозгов". Все не так уж и плохо. Это одно из лучших капиталовложений, так как соотношение цена/производительность максимально выгодно.
Надеюсь, мои доказательства вы сочли как вполне убедительные. Причем необходимо отметить, что 128Мб - это тот разумный минимум, о котором я заикался в начале своей статьи. Если у вас есть деньги на приобретение большего объема не в ущерб остальной системе (я имею в виду, когда с производительностью процессора и видеокарты все нормально), то делайте это незамедлительно. Аппетит современных игрушек все растет, и скоро 128 Мб уже будет мало для комфортабельной игры на все пять баллов. Не верите? А зря... Совсем недавно на большинстве домашних компьютеров стояло по 1Мб оперативки, а размер винчестера едва доходил до 128Мб, 33Mhz- звучало гордо! А было это всего лет шесть назад. Кто знает, что будет еще через шесть? Прогресс идет семимильными шагами. Рост вычислительной мощности компьютеров не пропорционален во времени. Так что будь что будет. Все, что ни делается, - все к лучшему!
Дмитрий Пирожков
Компьютерная газета. Статья была опубликована в номере 21 за 2000 год в рубрике разное :: страна советов