The OpenNET Project / Index page

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



"Опубликован код ядра и ряда GNU-утилит для платформы Эльбрус 2000"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Заметили полезную информацию ? Пожалуйста добавьте в FAQ на WIKI.
. "Опубликован код ядра и ряда GNU-утилит для платформы Эльбрус..." +/
Сообщение от n00by (ok), 25-Авг-22, 12:59 
Если интересно, как работает предсказатель переходов в привычных процессорах, наберите в поиске 64-ia-32-architectures-optimization-manual, скачайте pdf и почитайте. Что бы быстрее сориентироваться в этом талмуде, вбейте в программе просмотра в поиск branch prediction. В ранних вариантах архитектуры предсказатель действовал достаточно топорно: когда видел впервые переход назад (обычный для цикла), считал, что его надо исполнить; когда видел повторно, повторял предыдущее решение. Потом придумали для команд переходов префиксы, подсказывающие процессору. Программист писал в коде if (unlikely(fd < 0)). Потом префиксы убрали. Процессор исполняет обе ветки условного перехода и отбрасывает лишнюю, когда становится известно значение флага (здравствуй Спектрум и Мельдоний). Я не знаю, зачем здесь САПР. По-моему, достаточно сгенерировать такие широкие команды, что бы исполнялось обе ветки сразу.

Я боюсь оказаться банальным, но Итаник затонул как и Титаник - по тем причинам, что публике не рассказывают. В то время мне потребовалось сгенерировать код на С++ и обнаружилось, что когда тело функции становится больше чем пороговое число строк (не помню, может 1000), MSVC 7-й версии отключал оптимизатор. А иногда падал с сообщением «не хватает памяти». Сейчас ОЗУ больше на порядки.

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

Оглавление
Опубликован код ядра и ряда GNU-утилит для платформы Эльбрус 2000, opennews, 20-Авг-22, 19:35  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



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

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