Arm что за программа

Реза Рамезанпур, девелопер-адвокат компании Tigera, занимающейся продвижением Project Calico, рассказывает на портале The New Stack о нескольких популярных проектах ARM, об основных различиях между архитектурами x86 и ARM, а также о том, как можно подготовить разработчиков к будущему, предоставив им контейнерную ARM-среду.

Центральные процессоры (CPU) можно сравнить с человеческим мозгом, поскольку их уникальная архитектура позволяет им решать математические уравнения различными способами. На данный момент x86 является доминирующей архитектурой, используемой в облачных вычислениях; однако стоит отметить, что эта архитектура эффективна не для всех сценариев и ее проприетарный характер является причиной сдвига отрасли в сторону ARM.

ARM (Advanced RISC Machines) — это тип архитектуры процессора, на котором работает большинство планшетов и смартфонов, а также самый быстрый в мире суперкомпьютер Fugaku. Низкое энергопотребление и высокая вычислительная производительность ARM делают ее достойным конкурентом x86 в облачных вычислениях.

ПРОЦЕССОРЫ ARM vs x86: ОБЪЯСНЯЕМ

ARM vs. x86

Компании все чаще обращаются к архитектуре ARM для снижения стоимости и энергопотребления. В то время как x86 остается проприетарной архитектурой, ARM предоставляет лицензии другим компаниям. Это позволяет этим компаниям разрабатывать процессоры на заказ с использованием запатентованной технологии ARM.

Разработанный Amazon процессор Graviton является отличным примером использования ARM в облачных вычислениях. Благодаря применению этих процессоров экземпляры AWS A1 обеспечивают производительность, сравнимую с x86-экземплярами EC2, при этом снижая затраты на 40%.

Основное различие между ARM и x86 можно проследить в способе выполнения инструкций. Например, обычный настольный процессор x86 использует реализацию архитектуры CISC (complex instruction set computer), позволяющей одной инструкции выполнять многошаговые операции в каждом тактовом цикле.

ARM, с другой стороны, использует реализацию архитектуры RISC (reduced instruction set computer), что позволяет ему использовать ограниченный, высоко оптимизированный набор инструкций для выполнения одной инструкции в каждом тактовом цикле.

Контейнеры ARM

Прежде чем я продолжу, давайте обратимся к «слону в комнате». Вы можете подумать: «Многие среды выполнения контейнеров, такие как Docker, могут использовать команду buildx (или аналогичную) для создания контейнеров для различных архитектур процессоров, так почему мы вообще ведем этот разговор?».

Читайте также:
Приложение специальные возможности что это за программа и нужна ли она

Хотя docker build —platform может создать образ, специфичный для платформы, вы не можете запускать команды, выполняющие двоичные файлы из ваших рецептов (Dockerfiles).

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

Контейнеры используют процессор и ядро совместно с хостом, что означает, что базовое оборудование диктует, какой набор инструкций можно использовать в контейнерной среде. Это можно увидеть на предыдущем сообщении сборки Docker, выделенном красным цветом.

Что такое архитектура. X86. ARM. AVR

Исполняемые программы, которые мы используем, компилируются как двоичные файлы. Компиляция — это магический шаг в процессе разработки ПО, когда компилятор (ПО) берет часть исходного кода (возможно, читаемого человеком!) и преобразует его в двоичный машинный код (т. е. единицы и нули), специфичный для процессора. Проще говоря: программы создаются другими программами. Кроме того: существуют языки-интерпретаторы, которые могут напрямую выполнять инструкции из исходного кода, но не будем погружаться в эту пучину.

Linux в помощь

Насыщенное функциями ядро Linux — это модульная часть ПО, которая может быть настроена в соответствии с вашими требованиями. Одна из таких функций, binfmt_misc, позволяет запускать практически любые двоичные файлы в вашей системе с помощью интерпретатора, независимо от архитектуры компиляции двоичных файлов. Linux можно настроить на использование binfmt_misc и сопоставить начальные байты двоичного файла, чтобы определить, какой интерпретатор подходит для его выполнения.

В нашем случае нам нужно запустить все с помощью интерпретатора, который может понимать процессорные инструкции ARM64. (Ядро Linux и binfmt — огромные темы и выходят за рамки этой статьи, но если вам интересно, то эта статья на kernel.org — отличное место для начала ознакомления).

Проект multiarch использует ту же концепцию для регистрации гипервизора QEMU в качестве интерпретатора, позволяя пользователям эмулировать различные архитектуры процессоров для контейнеров.

Цена эмуляции

Эмуляция — это отличный способ начать тестирование и разработку решений без необходимости использования реального оборудования. Однако стоит отметить, что она добавляет слой накладных расходов поверх родной платформы, что делает ее непригодной для производственных сред.

Ограниченные возможности и более низкая производительность из-за отсутствия родной платформы — это все цена эмуляции.

Читайте также:
Что за программа pixie

Сценарии использования

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

Проекты веб-уровня являются отличной отправной точкой для интеграции ARM. В качестве примера можно привести Apache и NGINX — очень популярные веб-серверы, которые уже поддерживают архитектуру ARM. Стоит отметить, что поддержка ARM — это не единственное преимущество, поскольку использование NGINX в качестве кэширующего сервера или обратного прокси в среде ARM позволит достичь более высокой производительности по сравнению с x86.

Базы данных in-memory — еще одна область, где архитектура ARM может обеспечить улучшения. Используя архитектуру RISC, такие приложения, как Redis, могут достичь впечатляющей производительности по сравнению со средой x86.

Полный спектр сценариев использования — это обширная тема, которая выходит за рамки данной статьи, но если вам интересно, ознакомьтесь с техническим докладом AWS, в котором рассказывается о некоторых экспериментах и эталонных тестах для архитектуры ARM64.

Архитектура ARM представляется отличной альтернативой системам x86, и ее эффективность способствует инвестициям компаний в ее будущее для облачных вычислений. Соответствующая трансформация приложений и кластеров может позволить снизить затраты без ущерба для производительности.

Источник: www.itweek.ru

Блог

Возможно, вы не знаете все концепции аппаратного обеспечения наизусть, но вы, возможно, слышали о них и хотите знать, что это такое или для чего они нужны. Например, что такое ARM? Что означает этот термин, или почему вы видели, как о нем пишут в технических характеристиках или новостях о технологиях, но вам не ясно, что это такое.

ARM Holdings — транснациональная компания, занимающаяся разработкой программного обеспечения и полупроводников, но это также название, данное типу процессоров, поскольку именно данная компания изобрела дизайн этих процессоров. ARM — это процессоры, которые использует ваш мобильный телефон, а также ноутбуки некоторых производителей. Если вы хотите знать больше о данной технологии, то продолжайте читать нашу статью, потому что вы узнаете из нее много полезного.

Что такое АРМ

ARM — это название или концепция процессоров, которые разрабатывались компанией ARM Holdings на протяжении десятилетий. Это процессоры, основанные на архитектуре RISC или Reduced Intruction Set Computer, что в переводе с английского означает, «Компьютер с сокращенным набором команд». Более упрощенная конструкция по сравнению с другими процессорами таких брендов, как Intel или AMD. То есть с такой структурой, которая позволяет создавать процессоры меньшего размера, но при этом не только изменяются размеры, но они также являются процессорами с низким энергопотреблением. Они просты и недороги в производстве, что позволяет использовать их во всевозможных устройствах повседневного пользования.

Читайте также:
Что это за программа battlefield

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

Где используется и для чего?

Для чего используются эти чипы или процессоры? Процессоры ARM больше не создаются и не производятся компанией ARM Holdings, она лишь создала и разработала стандарт, который производители теперь используют для своих различных устройств и адаптируют их к соответствующим аппаратным и программным потребностям.

Каждый бренд или производитель использует процессоры с архитектурой ARM, но не все они, как правило, совместимы, например, с тем или иным устройством. Вы наверняка слышали о компании Qualcomm, которая стоит за многими процессорами, используемыми в мобильных телефонах. Например, процессоры Snapdragon присутствуют во многих смартфонах. Они есть в мобильных телефонах, а также в некоторых компьютерах и других небольших устройствах, а также в оборудовании, таком как телевизоры, принтеры и т.д.

ARM против Intel, в чем разница?

Каковы основные различия между процессорами ARM и Intel? Как мы уже объясняли, процессоры ARM основаны на архитектуре RISC, а процессоры Intel — нет. Процессоры Intel основаны на архитектуре CISC, которая расшифровывается как Complex Instruction Set Computing или, по-русски, «Компьютер с полным набором команд». Разница между ними заключается в том, как они выполняют свою работу и как один или другой выполняет инструкции.

В случае процессоров RISC это обычно короткие и простые инструкции, но процессоры с архитектурой CISC, как правило, обычно выполняют более сложные и длинные инструкции.

Поделиться

Вам также может понравиться

Подробнее о статье 3 простых совета, которые должны знать пользователи ноутбуков

3 простых совета, которые должны знать пользователи ноутбуков

Подробнее о статье 12 основных преимуществ и недостатков ноутбуков MacBook

07.07.2020

12 основных преимуществ и недостатков ноутбуков MacBook

Подробнее о статье Безопасны ли корпуса для ПК из закаленного стекла?

15.11.2022

Безопасны ли корпуса для ПК из закаленного стекла?

Подробнее о статье Какие старые компоненты можно повторно использовать при сборке нового ПК?

13.03.2022

Какие старые компоненты можно повторно использовать при сборке нового ПК?

Подробнее о статье Типы видеоразъемов, что лучше?

15.09.2020

Типы видеоразъемов, что лучше?

Подробнее о статье Что такое скорость ОЗУ и как она влияет на производительность ПК?

16.08.2020

Источник: itznaniya.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru