Игра Bulletstorm, или Многоядерность в действии

22 февраля вышла игра Bulletstorm, и многие уважаемые ресурсы тут же начали сравнивать ее с таким шедеврами, как Gears of War и даже Duke Nukem. Прочитав штук десять крайне положительных отзывов на русском и английском, я сходил в магазин рядом с домом и всего за 540 рублей купил диск с игрой. Bulletstorm оказалась действительно неплохим шутером. Пожалуй, чуть более детским, чем хотелось бы, но все же увлекательным и в меру смешным. Но рекомендовать Bulletstorm всем знакомым я буду не только из-за сюжета и графики. Просто это первая на моем компьютере игра, где многоядерные процессоры используются столь… красиво.


Игра работает на не самом свежем, но вполне современном движке Unreal Engine 3.5. На моей системе (Core i7 -965 Extreme Edition/Radeon 6850) все бегает очень быстро, даже если включить графические настройки на максимум. При этом в процессоре задействованы все ядра: два процентов на 70-80, и еще два на 40-60 (уровень загрузки зависит от сложности конкретной сцены). А вот видеокарта, избавленная от лишних вычислений, загружается на 60-70%.


«Подумаешь!», - хмыкают скептики, - «Этот движок любая видеокарта осилит, даже очень средненького уровня. Вот и нагружали бы ее в полный рост, пусть трудится! А то развели, понимаешь, многоядерность…».


Извините, парни, но вы в данном случае неправы капитальнейше. Потому что столь грамотное распределение обязанностей между CPU и GPU делает сразу два очень полезных дела.


Во-первых, повышается акустический комфорт. Не секрет, что система охлаждения мощной видеокарты – главный источник шума в современном компьютере. Производители бьются, мучаются, но графические процессоры слишком горячи, чтобы охладить их малошумными пропеллерами и турбинами. Даже так называемые «тихие» модели при стопроцентной загрузке GPU ревут, как влюбленный морж. А вот в Bulletstorm чип вместо пиковых 90-95 градусов прогревается всего до 70-75 (при 50 градусах в режиме 2D), и кулер при этом раскручивается максимум до 65% от пиковой скорости. Его, конечно, становится слышно, но со звуковой картиной при 100% - никакого сравнения. На всякий случай уточню, что пропеллер на радиаторе процессора тоже начинает вращаться быстрее, чем обычно. Но он большой, 12-сантиметровый, так что некоторое увеличение числа оборотов на уши не давит совершенно.


Во-вторых, налицо комфорт, скажем так, технико-психологический. Хорошо, когда корпус  компьютера по высоте немногим уступает взрослому догу, но в большинстве случаев габариты его довольно скромны. И почти всегда видеокарта упирается в корзину с жесткими дисками. А последние – ребята ой какие капризные. И больше всего им не нравятся резкие изменения в окружающем мире. Современные модели HDD нормально работают при температуре до 60 градусов, однако до этой отметки она должна расти как можно более плавно, и прогреваться корпус у лучше равномерно. Ни о чем таком даже мечтать не приходится, когда рядом вдруг раскаляется видеокарта. Ее-то чипу не привыкать мгновенно прогреваться с 50 до 95 градусов, а вот для винчестера нагрев половины корпуса, прилежащего к видеокарте, например, с 40 до 55 градусов ой как не полезен. Тем более, что вторая половина, расположенная рядом с пропеллером на лицевой панели системного блока, остается довольно холодной. В сложнейшей механической системе, каковой является жесткий диск (расстояние от головки до поверхности пластины – несколько нанометров!), подобная дисгармония чревата неприятными для пользователя сюрпризами. Я сам предпочел бы поменять всю начинку компьютера, чем один внезапно скончавшийся жесткий диск.


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


К сожалению, не все игры сделаны столь же грамотно. Для менее "правильных" на моем дорогом корпусе Lian Li, сделанном целиком из алюминия, есть специальный переключатель, резко увеличивающий скорость вращения внутренних пропеллеров. Становится шумно, но даже раскаленный до сотни градусов GPU не портит жизнь соседям. Но что делать обладателям корпусов попроще, да еще и без волшебного тумблера?


А разработчики Bulletstorm – студия People Can Fly  - молодцы! Я их очень люблю еще с первой игры, Painkiller. И даже как-то странно вспоминать, что в 2004-м, когда она вышла, еще год оставался до премьеры двухъядерного Pentium D, а топовые модели видеокарт прекрасно охлаждались обычным 4-сантиметровым кулером.


Но возвращаться обратно вовсе не хочется. Надо просто сейчас работать чуть-чуть более ответственно.


Категории:
Пожалуйста, обратитесь к странице Уведомление об оптимизации для более подробной информации относительно производительности и оптимизации в программных продуктах компании Intel.

Комментарии

Аватар пользователя vlubch

Многоядерность – факт свершившийся, многоядерность – это хорошо. Эти и подобные им аргументы на текущий момент перешли в разряд информационного шума. А ситуацию желательно не усугублять: «сигнал», как правило, лучше очищать от «шума»…

Многоядерность – это «акустический комфорт»; многоядерность – технико-психологический (?) комфорт; в конце концов, многоядерность – это нет «волшебному тумблеру» (класс! :) )… Все это напомнило мне притчу о слепых мудрецах и слоне…
Так каков же этот «слон» - параллельное программирование? :) А речь должна идти именно о нем, т.к. пост помечен все же, как «разработка софта».

Все это я к тому, что пора бы, наверное, больше писать о «корешках», а не только о «вершках». Особенно, если речь идет о разработке. То, что хорошо (для пользователя) – не вопрос, то, что лучше (для программиста) – нет. Только пользователь-то - «играет», а программист-то – работает! А это, как говорится, две большие разницы. За первое - какая ответственность? Так, разве что на уровне … «шума».

Аватар пользователя Dmitry Oganezov (Intel)

Справедливое замечание

Аватар пользователя vilianov

Пользователь, между прочим, оплачивает работу программиста. И разработчиков железа - тоже.

И если он за свои деньги хочет комфорта - можно ли его за это винить?

Что же до "слона", то Вам, уважаемый vlubch, он, скорее всего, виден лучше, чем мне - выхватывающему определенные сегменты туши. Но зато у меня неплохо получается щекотать гордое животное :)

Так давайте же работать вместе.

Аватар пользователя vlubch

От щекотки дети не рождаются... :)
Да и хотеть, как говорится, не вредно...
Только "желания" в контексте проблем "оплаты" лучше вообще не затрагивать. По крайней мере, здесь. Могу лишь только сказать, что я лично предпочитаю получать деньги, чтобы иметь возможность работать, но не работать только для того, чтобы получать деньги :)

Аватар пользователя ramzer

Здравствуйте, уважаемые все!!!! Я студент СПбГУ ИТМО.
У меня к вам вот такой вопрос: препод задал нам курсовую, описать один из процессов разработки ПО, какие методологи при этом используются, какой график работы у сотрудников, кто из персонала трудится над этим, какой состав комады в общем все. Если можете помогите пожалуйста.
Спасибо.

Аватар пользователя vlubch

Вопрос, конечно, не в тему, но, тем не менеее, ... В СПбГУ ИТМО есть кафедра ИТ и ее сайт - http://is.ifmo.ru/news/, посвященный определенной технологии програмирования. Может, что подойдет то, что есть на нем, или уже попросите там помощи.