Member
Статус: Не в сети Регистрация: 24.01.2007 Откуда: Харків, Україна
Господа, небольшая раздача точек над i:
Итак, начнём с хорошего - преимущества x64: Во-первых, Интел правильно назвал свою технологию, это технология работы с памятью - альтернатива PAE, который убивает производительность памяти, требуя дополнительного просмотра таблиц маппинга памяти. По некоторым не проверенным (мною) данным PAE убивает до 30% производительности памяти - это первый источник повышения производительности. Само собой, возможность адресации больших объёмов памяти тоже никто не отменял. Во-вторых, в x64 режиме в качестве основы используются SSE2 команды, которые по сравнению с IA32 инструкциями тоже имеют определённые (иногда довольно весомые) преимущества. В третьих, таки расширяется набор регистров.
Но, как всегда за всё надо платить, потому есть и недостатки: А он, собственно, один - увеличенный размер кода каждой инструкции. Но отсюда выплывает ряд не очень хороших следствий (рассмотрим для примера архитектуру Intel Core2): Во-первых, это просто увеличивает объем кода. Соответственно, и требования к памяти возрастают, и в кеш меньше команд помещается. Это не зависит от архитектуры. Во-вторых, в Core2 отрубается технология Macrofusion, т.е. теоретическая максимальная производительность уменьшается с 5 до 4 команд за такт. В третьих, страдает и Wide Dynamic Execution (возможность выполнения 4 микроопераций за такт), т.к. выборка данных из кеша производится 16-байтными блоками. Если этого зачастую достаточно для 4 IA32 команд, то 4 64-битные команды будут помещаться в 16 байт значительно реже. (Аналогично страдают и AMD процессоры.)
Следует однако заметить, что к катастрофическому падению производительности Core2 это не приводит, и в своё время проблема была очень сильно раздута, однако оно есть.
Итого, сейчас осень - пора считать цыплят и делать выводы... Что же получается в сумме?... А в сумме получается, что для современных архитектур процессоров наиболее выгодным применением оказывается исполнение 32-битного кода с использованием SSEx расширений и не требующего более 4Гб памяти (отказ от использования PAE). Слава Богу, пока под это определение, подходит большинство пользовательских задач.
Но проблема в том, что под Windows софт обычно распространяется уже в виде бинарников, которые для совместимости чаще всего не используют по умолчанию всевозможные SSEx инструкции, плюс по умолчанию x86 Windows использует PAE. Итого мы получаем наихудший сценарий! В такой ситуации x64 выступает как бы средним вариантом - хуже идеального, но лучше чем по-умолчанию. Отсюда и приросты в 64-битных версиях ОС. В линуксах, которыми сам зачастую и пользуюсь, таких проблем намного меньше. Естественно, я не рассматриваю случай когда реально надо более 4 Гб памяти, здесь без вариантов.
Вот такие пироги. Надеюсь кому-то это поможет сделать правильный выбор! Кстати, не подскажете, как в Виндовсе отрубить PAE?
Member
Статус: Не в сети Регистрация: 24.01.2007 Откуда: Харків, Україна
Мак_Сим писал(а):
очень старался, но до конца не уверен, что правильно все понял: получается что х64 все же предпочтительнее?
Тут однозначно таки не скажешь. Это в линуксе всё просто - собрал ядро без PAE, перекомпилил нужную софтинку с SSE нужным - и дело в шляпе! В виндовсе сложнее... Мой лично выбор - 32-битная ось с отключеным PAE (!) плюс надежда, что критичные к скорости приложения всё-таки имеют оптимизацию под SSE... Опять же, преимущества 64-битного режима раскрываются только в связке 64-бит ОС + 64-бит приложение, а такое пока - редкость...
Allert писал(а):
Получается, что в итоге х64 не хуже х32. Что и требуется доказать,
Зря вы так однозначно. Где-то не хуже, а где-то и хуже... Прямое назначение технологии - адресация больших объёмов памяти. Где-то это нужно, и тут и обсуждать нечего. Но за всё в жизни надо платить, и где-то окажется, что "игра не стоит свеч а результат - труда"...
Allert писал(а):
к чему и стремилась АМД, и что она с блеском выполнила еще в 2000году.
АМД стремилась хоть капельку подвинуть 64-битных "мастодонтов" серверного рынка (Itanium, Sun). Раньше эта сфера применения вообще была закрыта для x86 процессоров. Конечно, прикрученный сбоку x86-64 - это совсем не то, что IA64 или RISC64, но в роли "Itanium-a для бедных" и такие процессоры вполне имеют право на жизнь! Плюс, маленькая поправочка:
Wikipedia писал(а):
The first AMD64-based processor, the Opteron, was released in April 2003.
_________________ Citus, altus, fortus !
Последний раз редактировалось Ao 11.09.2007 17:07, всего редактировалось 1 раз.
Т.е. при 2гб памяти мы смело отключаем ПАЕ и получаем некоторый прирост производительности?
По поводу х64 приложений - в 7zip x64 с включенной опцией _ИСПОЛЬЗОВАТЬ БОЛЬШИЕ СТРАНИЦА ПАМЯТИ_ получается прирост на А64 939 - где то под 25-35% Совсем неплохо из ничего.
_________________ Не думаю, что об этом стоит говорить.
Member
Статус: Не в сети Регистрация: 11.12.2005 Откуда: ин Москоу
Ao +1, как говорится. От себя добавлю, что AMD64 процы лучше воспринимают 64-битный код - имеет место некоторое повышение производительности. А на интеле - никакого ни повышения, ни снижения тоже, во всяком случае - заметного. Речь идёт о ХР против ХР Х64 или аналогичной пары Висты Х86 против Виста Х86-64.
Таким образом, как уже сказанно было, если надо бОльше 4 гигов оперативки - вперёд, за оперативкой (это во-первых!) и за ОСью Х64. В этих случаях подразумевается, что имеет место рабочий компутер с несколькими основными программами, которые априори являются 64-битными или имеется настройка этого софта на использование бОльшего объёма адресуемой памяти, чем 2 с копейками гига, как по-дефолту в ВинХР том же.
Вариант домашнего компа - безальтернативно Х86 и без каких-либо Х64. Причина проста: програм, заточенных под эти Х64 дома или очень мало ил, как правило - вовсе нет. Остальным прогам до 8-16 гигов оперативы - просто фиолетово. Они живут в обычном 32-битном пространстве и сами являются 32-битными. Причём, если 32-битному софту, обычно, в таких условиях не лучше, чем в родной 32-битной ОСи, то некоторые проги не идут вовсе - 16-битные инсталляторы, драйверы и так далее могут быть несовместимы просто. Это касается не только устаревшего оборудования, но и вполне современного, как мой принтер.... Вот так. Ни одной разумной причины бы самому сидеть на 64-битной Висте б не было, но 32-битная не живёт на моём компе... Добавлено спустя 8 минут, 41 секунду
maxuser писал(а):
Да те же игры вынудят через пару лет. Когда вышел баттлфилд2? А это не помешало ему кушать 1,5ГБ оперативки...
Вот как как через пару лет меня не будет мучать вопрос, какого хрена у меня в компе хард с залитым для этого случая специально ХР делает, а моя Виста Х64 не понимает принтера.... Вот как смогу этот принтер юзать - всё, плюну на 32 бита. Ну и, наверно, поставлю в комп 8-16 гигов. А пока не вижу никакой пользы... Эх, лично бы задушил каноновских разработчиков дровняка!
Member
Статус: Не в сети Регистрация: 24.01.2007 Откуда: Харків, Україна
Хм, попытался вчера отключить PAE и DEP в Висте x86... Не знаю, сработало или нет, я так и не понял как в Висте чётко это посмотреть, но в Эвересте никаких сдвигов не заметил, а вот WinRAR вроде килобайт на 150 в секунду больше стал показывать. Но это так, по памяти... Кстати, в Висте он намного медленнее чем в ХР. В ХР у меня ~2100-2200 Кб/с было, а в Висте сейчас ~1840....
Вот и хз, или не сработало, или пока нету больше 4 Гб памяти и сами приложения не поддерживают PAE, то оно и не тормозит сильно... Либо TLB кеши у Core2 уж очень эффективные, по крайней мере для сценария Эверестовских тестов...
А вообще, пока DX10 не прижмёт, в Висте, похоже, особого толку нету даже с четырёхъядерником...
Member
Статус: Не в сети Регистрация: 19.12.2005 Откуда: НН Фото: 69
В очередной раз поставил Висту х64, продержалась два дня, потом та же самая фигня... Сначала висла при загрузке в приветствии, потом уже призагрузке на рабочем столе, а потом ваще не загрузилась. Страйп опять умер, винты проверял - все ок. Обидно блин Как-нить попробую ХР х64 SP2...
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения