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...
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения