Архитектура Microsoft EDGE – параллельная реальность.

14 Августа 2018

Архитектура EDGE (Explicit Data Graph Execution) - вклад авторов самой популярной на сегодня операционной системы в развитие параллельных вычислений как средства увеличения производительности вычислительных систем, как того требуют проекты Industry 4.0, Big Data и AI (Искусственного Интеллекта).

Об архитектуре EDGE известно немного, еще меньше о готовом процессоре E2. Команда Microsoft совместно с   Qualcomm продемонстрировала портированные Windows 10, Linux ++ в реализованном на ПЛИС экспериментальном чипсете (не нужно переписывать программный код – достаточно его перекомпилировать), а также работу FreeRTOS, библиотек .NET Core и С/C, после чего сведения о дальнейшем его развитии перестали поступать. Поэтому так непросто понять, что это такое, новая архитектура EDGE, и чем она отличается от CISC, RISC или VLIM?

В основе E2 лежит использование новой архитектуры набора команд explicit data graph execution. EDGE-процессоры состоят из множества исполнительных блоков и набор команд EDGE –архитектуры пытается задействовать одновременно максимум из них. EDGE также явно кодирует зависимые данные в двоичный файл, чтобы облегчить работу CPU, что является особенностью EDGE-архитектуры (запрограммированная зависимость данных). Компилятор EDGE оптимизирует код в поисках инструкций, которые могут выполняться независимо друг от друга, и в противном случае явно отмечает эти зависимости в двоичном файле. Внутри исполнительного блока EDGE-код использует собственные частные регистры, и нет необходимости обращаться к основному регистру на уровне ядра. Исполняемый код также помечается компилятором для описания потока данных, что позволяет процессору корректно исполнять блоки инструкций.

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

  • Несколько физических ядер, работающих независимо

  • Несколько физических ядер, работающих параллельно для выполнения одних и тех же операций с несколькими наборами данных одновременно

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

Core Fusion (объединение ядер) позволяет новому процессору E2 функционировать в широком диапазоне мощностей и производительности, от энергоэффективных встроенных процессоров до высокопроизводительных процессоров серверного класса.


вверх