Вопросы с тегом «cpu-architecture»

Аппаратная микроархитектура (x86, x86_64, ARM, ...) процессора или микроконтроллера.

322
Деоптимизация программы для конвейера в процессорах семейства Intel Sandybridge

Я целую неделю ломал голову, пытаясь выполнить это задание, и я надеюсь, что кто-то здесь может привести меня к правильному пути. Позвольте мне начать с инструкций инструктора: Ваше задание противоположно нашему первому лабораторному заданию, которое должно было оптимизировать программу простых...

244
Что такое ретполин и как он работает?

Для предотвращения раскрытия памяти в ядре или в межпроцессном режиме ( атака Spectre ) ядро Linux 1 будет скомпилировано с новой опцией , -mindirect-branch=thunk-externвведенной gccдля выполнения косвенных вызовов через так называемый retpoline . Похоже, что это новый изобретенный термин,...

204
Какова цель параметра «Предпочитать 32-разрядный» в Visual Studio и как он на самом деле работает?

Мне неясно, как компилятор автоматически узнает, что нужно для 64-битной компиляции, когда это необходимо. Как он узнает, когда он может уверенно нацеливаться на 32-битную версию? Мне в основном интересно, как компилятор знает, на какую архитектуру ориентироваться при компиляции. Анализирует ли он...

147
В чем разница между Слэй против Карлика против Сеха?

Я не могу найти достаточно информации, чтобы решить, какой компилятор мне использовать для компиляции моего проекта. На разных компьютерах есть несколько программ, имитирующих процесс. В Linux я использую GCC. Все отлично. Я могу оптимизировать код, он быстро компилируется и использует не так много...

119
Есть ли умные случаи модификации кода времени выполнения?

Можете ли вы представить себе какое-либо законное (умное) использование для модификации кода во время выполнения (программа, изменяющая свой собственный код во время выполнения)? Современные операционные системы, похоже, недовольны программами, которые делают это, поскольку этот метод используется...

105
Почему x86 уродлив? Почему он считается неполноценным по сравнению с другими? [закрыто]

В его нынешнем виде этот вопрос не подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, повлечет за собой дебаты, аргументы, опросы или расширенное обсуждение. Если вы считаете, что этот вопрос можно...

103
Для чего предназначен регистр «FS» / «GS»?

Итак, я знаю, какими должны быть следующие регистры и их использование: CS = сегмент кода (используется для IP) DS = сегмент данных (используется для MOV) ES = целевой сегмент (используется для MOVS и т. Д.) SS = сегмент стека (используется для SP) Но для чего предназначены следующие регистры? FS...

97
Почему системы x86-64 имеют только 48-битное виртуальное адресное пространство?

В книге я прочитал следующее: 32-битные процессоры имеют 2 ^ 32 возможных адреса, в то время как современные 64-битные процессоры имеют 48-битное адресное пространство. Я ожидал, что если это 64-битный процессор, адресное пространство также должно быть 2 ^ 64. Поэтому мне было интересно, в чем...

96
В чем разница между словом и байтом?

Я провел небольшое исследование. Байт равен 8 битам, а слово - это наименьшая единица, которая может быть адресована в памяти. Точная длина слова варьируется. Я не понимаю, в чем смысл байта? Почему бы не сказать 8 бит? Я задал этот вопрос профессору, и он сказал, что в наши дни большинство машин...

93
Кэширование с обратной записью или сквозной записью?

Насколько я понимаю, основное различие между этими двумя методами заключается в том, что в методе со сквозной записью данные записываются в основную память через кеш немедленно, а в режиме с обратной записью данные записываются «позже». Нам все еще нужно дождаться памяти «в последний раз», так что...

89
Почему Intel скрывает внутреннее ядро ​​RISC в своих процессорах?

Начиная с Pentium Pro (микроархитектура P6), Intel переработала свои микропроцессоры и использовала внутреннее ядро ​​RISC в соответствии со старыми инструкциями CISC. Начиная с Pentium Pro, все инструкции CISC делятся на более мелкие части (uops), а затем выполняются ядром RISC. Вначале мне было...

9
Что вызывает эту высокую изменчивость в циклах для простой узкой петли с -O0, но не -O3, на Cortex-A72?

Я провожу несколько экспериментов по получению высокосогласованных сред выполнения для куска кода. Код, который я сейчас синхронизирую, представляет собой довольно произвольную нагрузку на процессор: int cpu_workload_external_O3(){ int x = 0; for(int ind = 0; ind < 12349560; ind++){ x = ((x ^...