Skylake

  • ХабрахабрФото [Перевод] Знакомимся с дата-ориентированным проектированием на примере Rust

    [Перевод] Знакомимся с дата-ориентированным проектированием на примере Rust

    James McMurray В этом посте мы исследуем основные концепции «Data-Oriented Design» (далее «дата-ориентированное проектирование» на языке Rust.Весь исходный код для этого поста выложен на Github. Что такое дата-ориентированное проектирование? Дата-ориентированное проектирование – это подход к оптимизации программ, предполагающий, что расположение структур данных в памяти должно тщательно оптимизироваться. Также требуется учитывать, как такой подход отражается на автоматической векторизации и использовании кэша…

    Читать далее »
  • ХабрахабрФото [Перевод] Знакомимся с дата-ориентированным проектированием на примере Rust

    [Перевод] Знакомимся с дата-ориентированным проектированием на примере Rust

    James McMurray В этом посте мы исследуем основные концепции «Data-Oriented Design» (далее «дата-ориентированное проектирование» на языке Rust.Весь исходный код для этого поста выложен на Github. Что такое дата-ориентированное проектирование? Дата-ориентированное проектирование – это подход к оптимизации программ, предполагающий, что расположение структур данных в памяти должно тщательно оптимизироваться. Также требуется учитывать, как такой подход отражается на автоматической векторизации и использовании кэша…

    Читать далее »
  • ХабрахабрФото Сколько инструкций в x86?

    Сколько инструкций в x86?

    vvvphoenix упомянул в своей позавчерашней статье: «Кстати, я пытался найти график роста числа X86 инструкций по годам (или по поколениям). Пока не смог (может, есть у кого?)» Я решил, что мне это тоже интересно — да настолько, что не жалко потратить выходной день на сведение en.wikipedia.org/wiki/X86_instruction_listings в одну табличку: Считались различные мнемоники; например, десятки вариантов MOV считались за одну инструкцию.…

    Читать далее »
  • ХабрахабрФото [Перевод] Ошибочно предсказанное ветвление может в разы увеличить время выполнения программы

    [Перевод] Ошибочно предсказанное ветвление может в разы увеличить время выполнения программы

    Современные процессоры суперскалярны, то есть способны выполнять несколько инструкций одновременно. Например, некоторые процессоры могут обрабатывать за цикл от четырёх до шести инструкций. Более того, многие такие процессоры способны инициировать команды не по порядку: они могут начать работать с командами, расположенными в коде намного позже. Такие ветвления часто реализуются как «переходы», при которых процессор или переходит к выполнению инструкции ниже по…

    Читать далее »
  • ХабрахабрФото Так-Так-Так и никакого Тика. Чем отличаются процессоры Intel Core разных поколений на основе одной архитектуры

    Так-Так-Так и никакого Тика. Чем отличаются процессоры Intel Core разных поколений на основе одной архитектуры

    Обещание уменьшить технологический процесс с 14 до 10 нм так и осталось обещанием, началась долгая эпоха «Така» Skylake, во время которой случился Kaby Lake (седьмое поколение), внезапный Coffee Lake (восьмое) с незначительным изменением техпроцесса с 14 нм до 14 нм+ и даже Coffee Lake Refresh (девятое). С появлением процессоров Intel Core седьмого поколения многим стало понятно, что стратегия «Тик-так», которой…

    Читать далее »
  • ХабрахабрФото [Перевод] Почему процессоры Skylake иногда работают в 2 раза медленнее

    [Перевод] Почему процессоры Skylake иногда работают в 2 раза медленнее

    Мне сообщили, что на новых компьютерах некоторые регрессиионные тесты стали медленнее. Обычное дело, такое бывает. Неправильная конфигурация где-то в Windows или не самые оптимальные значения в BIOS. Но в этот раз нам никак не удавалось найти ту самую «сбитую» настройку. Поскольку изменение значительное: 9 против 19 секунд (на графике синий — это старое железо, а оранжевый — новое), то пришлось…

    Читать далее »


Кнопка «Наверх»