Для тех, кто еще не видел, в апреле 2023 года компания Intel представила упрощенный набор инструкций, который она назвала X86-S. Основное изменение заключается в том, что Intel предлагает отказаться от поддержки собственных 16- и 32-разрядных команд в своем наборе инструкций. Как было сказано выше, Intel должна это сделать, но это связано с большими затратами.
Упрощенный 64-разрядный набор инструкций Intel X86-S — перспективы
Согласно сообщению в блоге Intel и 46-страничному документу, основной целью X86-S является очистка от устаревших 16- и 32-разрядных режимов работы. В настоящее время для перехода в 64-разрядный режим процессоры X86 должны преодолеть 16- и 32-разрядные режимы работы.
Читая это, скорее всего, на 64-разрядной системе и в 64-разрядной ОС, вы можете подумать, что этот переход уже произошел. В мире x86 обратная совместимость — это большая вещь, поэтому унаследованные режимы все еще существуют. Когда мы начинали STH в 2009 году, это был переход от 32-битной к 64-битной ОС. Существовали реальные опасения, что 32-разрядные ОС будут более эффективны при небольших объемах памяти. Именно по этой причине многие проекты Arm, например Raspberry Pi, долгое время были преимущественно 32-разрядными. В диапазоне менее 3-4 Гбайт оперативной памяти 32-разрядные ОС могут иметь смысл. Для современных x86-процессоров 4 Гбайт — это нижний предел, и когда мы видим системы, оснащенные даже старыми ядрами E и 4 Гбайт, мы предполагаем, что в наше время это должно быть 8 Гбайт. Стоимость 8-гигабайтной памяти DDR4 SODIMM на момент публикации этой статьи составляет около 17-18 долларов США.
Поскольку Linux и Microsoft уже более десяти лет продвигают 64-битную архитектуру, то, как говорится в статье, пришло время избавиться от устаревших инструкций и функциональности X86.
Поскольку обратная совместимость имеет большое значение, предлагаемое решение является наполовину работоспособным. Intel предлагает использовать виртуальные машины для обеспечения унаследованной поддержки 16- и 32-разрядных систем. Возникает вопрос: зачем? Оборудование 2023 года более чем способно выполнять устаревший код. Сегодняшние процессоры реально проработают до 2030 года в массовом порядке. Для любых приложений, которые должны быть «голыми», почему бы не использовать сегодняшнее оборудование в качестве части истории утилизации?
Завтрашний переход означает, что у тех, кто использует сегодняшнее оборудование, есть достаточно времени, чтобы перевести большинство приложений либо на виртуальные машины, либо просто оставить их на существующих аппаратных платформах.
А пока работа по оптимизации X86 помогает более эффективно решать завтрашние проблемы, а не мешает их решению за счет использования устаревшего оборудования. В перспективе совместимость с 16-разрядными системами двух поколений в 2023 году — это все равно, что SpaceX тратит время на то, чтобы придумать, как пристегнуть лошадиное седло к креслу ракеты. Если люди все еще хотят кататься на лошадях, они могут использовать лошадей и седла. Мы можем вспомнить о 16-битной совместимости через ESG-тематику, как мы вспоминаем о ностальгических занятиях конным спортом.
Если бы сейчас были 2007-2010 годы, когда этот переход был в полной силе, мое мнение было бы совсем другим, но мы находимся в десятилетии или полутора десятилетиях от его основного толчка.
Учитывая все вышесказанное, следует задуматься о том, что это означает. Если в основных областях деятельности Intel, таких как производство процессоров для ноутбуков, настольных ПК и серверов, 64-разрядные процессоры могут использоваться уже сегодня, то в сфере IoT это далеко не так. Там 32-разрядные процессоры могут иметь смысл с точки зрения энергопотребления и стоимости. В то же время Intel не ставит это во главу угла. Вместо этого E-ядра становятся быстрее, а Quark продолжает закат (забавный факт: вы можете купить новые серверы с 32-разрядными ядрами Intel Quark в PCH поколения Lewisburg).
Последние слова
Этим шагом Intel фактически уступит IoT для X86 в пользу Arm и RISC-V. Возможно, она уже сделала это. Возможно, для многих это не самое большое изменение в мире, и 32-битные приложения все еще существуют. В то же время мы живем в эпоху, когда 64-разрядность для клиентских и серверных устройств является мейнстримом, так что и в этих частях рынка наступает время перехода. Вопрос только в том, когда.
Если вы относитесь к числу тех, кто обеспокоен этим вопросом, ознакомьтесь со страницей Intel и техническим документом, ссылки на которые приведены выше.