The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Новости Ubuntu: отказ от CD, удаление Mono, акцент на 64-раз..."
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Заметили полезную информацию ? Пожалуйста добавьте в FAQ на WIKI.
. "Новости Ubuntu: отказ от CD, удаление Mono, акцент на 64-раз..." +1 +/
Сообщение от anonymous (??), 06-Ноя-11, 19:25 
Еще раз.

Ты сказал, что x86_64 лучше чем i386(i686) потому что:

- есть относительная адрасация (в отличие от).
- больший пул регистров и сами регистры длиннее, а так же появились исполнительные устройства которве изначально спроектированы для оаботы с 64 битными данными (предположим это на саомм деле так, хотя какая разница 1 устройство с огромной площадью за такт умножающее 2 64 битных числа или 2 утсройства с 1/4 площадью делающих то же за 2 такта но тактируемые в 2 раза чаще)

Со вторым спорить не стал, хотя там есть один подводный камень - вся радость увеличения регистрового пула только писателям компиляторов. Задача раскидывания переменных по регистрам она порядка NP, решается оптимально толко полным перебором, и если железо поддерживает больше регистров то это немного сглаживает принципиальную неоптимальность АЛГОРИТМА ОПРИМИЗАЦИИ КОМПИЛЯТОРА. К железу и скорости выполнения это никак не относится. Но факт есть - если больше регистров, то программы будут быстрее выполняться. Поправка только - это не недостаток архитектуры i3(6)86, а недоразвитость теории алгоритмов и компиляторов.

Но тут появилась 'относительная адресация'. Все, финиш.

В 4004 и ранних вариантах логики в программируемых калькуляторах еще можно было о чем то говорить, но СЕЙЧАС? Это что, троллинг такой?

Относительная адресация говорит об одном - что у этого процессора в отличие от предыдущих
есть еще один сумматор, который на лету добавляет к адресу содержимое другого регистра. Любого. Этим изобретением гордились в 60 года, "... и это еще не все, наш микропроцессор не только стирает и раскладывает носки по парам, но и имеет - вы только представьте - относительную адресацию ! Наши инженеры добавили еще дно уникальное устройство сложения, теперь для часто упортебляемой комбинации вы можете сразу выбрать смещение из кода операции и ОДНОВРЕМЕННО сложить с базовым регистром, ОТНОСИТЕЛЬНО которого вы и адресуетесь"

Считаем.

Таблица страниц - 1 сложение с маскированием не считая проверки флагов и прочее.
Нахождение рального адреса путем суммирования базового регистра и смещения - еще 1.

Итого - Любая адресация у интела ОТНОСИТЕЛЬНАЯ. Причем минимум ДАВЖДЫ ОТНОСИТЕЛЬНАЯ Любая. Из за сегментных регистров, и тем более таблиц виртуальной памяти MMU.

Более того, есть еще и ТРЕТИЙ УРОВЕНЬ по пути к физичемкому регистру - есть специальные коды операций, в которых под 3 битное поле регистра, ОТНОСИТЕЛЬНО которого идет выборка данных, эдакий "аппаратный ускоритель для доступа к массивам и структурам по смещению от их начала". Там адресация IP не предусмотрена. А ЗАЧЕМ нам адресовать в коде чтото относительно регистра программного счетчика? Мы уже не Гарвардскую архитектуру имеем? У нас что, допотопная Лента Тьюринга? Мы пишем самомодифицирующийся код который на лету меняет сам себя? Зачем выбирать данные в трехуровневой сегментноф стековой машине с физически разделенной памятью команд и данных отностиельно команд?

Итог - любой интеловский процессор имеет минимум 2 кратно относительную адресацию. Двухкратно, а для некоторых случаем и трехкратную.

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

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Новости Ubuntu: отказ от CD, удаление Mono, акцент на 64-раз..., opennews, 05-Ноя-11, 16:20  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру