Процессор вашего устройства выполняет миллионы вычислений каждую секунду и отвечает за работу вашего компьютера. С ЦП работает блок арифметической обработки (ALU), который отвечает за математические задачи и управляется микрокодом ЦП.
Теперь этот микрокод ЦП не является статичным и может быть улучшен, и одним из таких улучшений стал набор инструкций Intel AVX-512. Тем не менее, Intel намерена убить AVX-512, навсегда удалив его функциональность из своих процессоров. Но почему? Почему Intel убивает AVX-512?
Как работает АЛУ?
Прежде чем познакомиться с набором инструкций AVX-512, важно понять, как работает ALU.
Как следует из названия, арифметический процессор используется для выполнения математических задач. Эти задачи включают такие операции, как сложение, умножение и вычисления с плавающей запятой. Для выполнения этих задач АЛУ использует специализированную цифровую схему, которая управляется тактовым сигналом ЦП.
Следовательно, тактовая частота ЦП определяет скорость, с которой инструкции обрабатываются в АЛУ. Итак, если ваш ЦП работает на тактовой частоте 5 ГГц, АЛУ может обрабатывать 5 миллиардов инструкций за одну секунду. По этой причине производительность ЦП улучшается по мере увеличения тактовой частоты.
Тем не менее, по мере увеличения тактовой частоты процессора увеличивается количество тепла, выделяемого процессором. По этой причине опытные пользователи используют жидкий азот при разгоне своих систем. К сожалению, такое повышение температуры на высоких частотах не позволяет производителям процессоров повышать тактовую частоту выше определенного порога.
Так как же процессор нового поколения обеспечивает более высокую производительность по сравнению со старыми версиями? Что ж, производители ЦП используют концепцию параллелизма для повышения производительности. Этот параллелизм может быть достигнут за счет использования многоядерной архитектуры, в которой используется несколько различных вычислительных ядер для повышения вычислительной мощности ЦП.
Еще один способ повысить производительность — использовать набор инструкций SIMD. Проще говоря, инструкция Single Instruction Multiple Data позволяет ALU выполнять одну и ту же инструкцию в разных точках данных. Этот тип параллелизма повышает производительность ЦП, а AVX-512 — это SIMD-инструкция, используемая для повышения производительности ЦП при выполнении определенных задач.
Как данные попадают в ALU?
Теперь, когда у нас есть общее представление о том, как работает АЛУ, нам нужно понять, как данные попадают в АЛУ.
Чтобы достичь ALU, данные должны пройти через разные системы хранения. Этот путь данных основан на иерархии памяти вычислительной системы. Краткий обзор этой иерархии приведен ниже:
- Вторичная память: Вторичная память на вычислительном устройстве состоит из постоянного запоминающего устройства. Это устройство может хранить данные постоянно, но не так быстро, как центральный процессор. Из-за этого ЦП не может получить доступ к данным напрямую из вторичной системы хранения.
- Основная память: Первичная система хранения состоит из оперативной памяти (ОЗУ). Эта система хранения работает быстрее, чем вторичная система хранения, но не может хранить данные постоянно. Поэтому, когда вы открываете файл в своей системе, он перемещается с жесткого диска в оперативную память. Тем не менее, даже оперативной памяти недостаточно для процессора.
- Кэш-память: Кэш-память встроена в ЦП и является самой быстрой системой памяти на компьютере. Эта система памяти делится на три части, а именно Кэш L1, L2 и L3. Любые данные, которые должны быть обработаны АЛУ, перемещаются с жесткого диска в ОЗУ, а затем в кэш-память. Тем не менее, ALU не может получить доступ к данным напрямую из кеша.
- Регистры процессора: Регистр ЦП на вычислительном устройстве очень мал по размеру, и в зависимости от архитектуры компьютера эти регистры могут содержать 32 или 64 бита данных. Как только данные перемещаются в эти регистры, АЛУ может получить к ним доступ и выполнить поставленную задачу.
Что такое AVX-512 и как он работает?
Набор инструкций AVX 512 — это вторая итерация AVX, которая появилась в процессорах Intel в 2013 году. Набор инструкций AVX, сокращенно от Advanced Vector Extensions, впервые был представлен в Intel Xeon. Архитектура Phi (Knights Landing), а затем и серверные процессоры Intel в Skylake-X. ЦП.
Кроме того, набор инструкций AVX-512 попал в потребительские системы с архитектурой Cannon Lake, а позже был поддержан архитектурами Ice Lake и Tiger Lake.
Основной целью этого набора инструкций было ускорение задач, связанных со сжатием данных, обработкой изображений и криптографическими вычислениями. Предлагая удвоенную вычислительную мощность по сравнению с более ранними версиями, набор инструкций AVX-512 обеспечивает значительный прирост производительности.
Итак, как Intel удвоила производительность своих процессоров, используя архитектуру AVX-512?
Ну, как объяснялось ранее, АЛУ может получить доступ только к данным, присутствующим в регистре ЦП. Набор инструкций Advanced Vector Extensions увеличивает размер этих регистров.
Из-за этого увеличения размера АЛУ может обрабатывать несколько точек данных в одной инструкции, повышая производительность системы.
Что касается размера регистра, набор инструкций AVX-512 предлагает тридцать два 512-битных регистра, что вдвое больше по сравнению с более старым набором инструкций AVX.
Почему Intel прекращает выпуск AVX-512?
Как объяснялось ранее, набор инструкций AVX-512 предлагает несколько вычислительных преимуществ. Фактически, популярные библиотеки, такие как TensorFlow, используют набор инструкций для обеспечения более быстрых вычислений на процессорах, поддерживающих набор инструкций.
Итак, почему Intel отключает AVX-512 на своих последних процессорах Alder Lake?
Что ж, процессоры Alder Lake отличаются от более старых, выпускаемых Intel. В то время как в старых системах использовались ядра, работающие на одной архитектуре, процессоры Alder Lake используют два разных ядра. Эти ядра в процессорах Alder Lake известны как P и E-сердечники и питаются от разных архитектур.
В то время как ядра P используют микроархитектуру Golden Cove, ядра E используют микроархитектуру Gracemont. Это различие в архитектурах препятствует правильной работе планировщика, когда определенные инструкции могут выполняться на одной архитектуре, но не могут выполняться на другой.
В случае с процессорами Alder Lake набор инструкций AVX-512 является одним из таких примеров, поскольку P-ядра имеют аппаратное обеспечение для обработки инструкции, а E-ядра — нет.
По этой причине процессоры Alder Lake не поддерживают набор инструкций AVX-512.
Тем не менее, инструкция AVX-512 может работать на некоторых процессорах Alder Lake, где Intel физически не отключила их. Чтобы сделать то же самое, пользователи должны отключить E-ядра во время BIOS.
Нужен ли AVX-512 на потребительских чипсетах?
Набор инструкций AVX-512 увеличивает размер регистра ЦП для повышения его производительности. Это повышение производительности позволяет ЦП быстрее обрабатывать числа, позволяя пользователям запускать алгоритмы сжатия видео/аудио на более высоких скоростях.
Тем не менее, это повышение производительности можно наблюдать только тогда, когда инструкция, определенная в программе, оптимизирована для работы с набором инструкций AVX-512.
По этой причине архитектуры набора инструкций, такие как AVX-512, больше подходят для серверных рабочих нагрузок, а наборы микросхем потребительского уровня могут работать без сложных наборов инструкций, таких как AVX-512.