Intel выпустила окончательную инструкцию по правильной настройке BIOS для Raptor Lake — производители плат всё делали неправильно 08.05.2024 [18:21]
Intel выступила с новым заявлением относительно проблем со стабильностью работы её флагманских процессоров Core 13-го и 14-го поколений с разблокированным множителем, пишет HardwareLuxx. На это раз Intel впервые обратилась непосредственно к потребителям и порекомендовала им не использовать «базовый профиль настроек Intel» в BIOS материнских плат. Совсем недавно сообщалось, что Intel обязала производителей плат поскорее выпустить BIOS, где этот профиль включён по умолчанию.
Intel до этого момента не делала никаких официальных прямых заявлений для владельцев её процессоров Core 13-го и 14-го поколений. Все предыдущие сообщения на этот счёт являлись рекомендациями, которые Intel предоставляла своим партнёрам из числа производителей материнских плат. Эти сообщения не должны были оказаться в публичной плоскости, но тем не менее оказались. Ни в одной из этих рекомендаций компания не указывала первопричину проблем стабильности в работе её чипов. Расследование этого дела продолжается. Новое заявление Intel таже не проливает свет на корень всех бед.
Компания рассказала, что у неё нет «базового профиля настроек Intel». Эти профили не являются спецификациями Intel, а создаются производителем материнской платы в зависимости от возможностей по питанию и напряжению той или иной платы. Intel также пояснила, что рекомендует использовать профиль Intel Default Settings для базового уровня производительности на платах низшего класса, но не рекомендует использовать его для процессоров K-серии с надежными материнскими платами. Вместо ограничения питания процессора на высококлассных материнских платах Intel советует использовать профили Performance или Extreme, которые подходят для таких процессоров, как Core i9-13900K/KF, Core i9-14900K/KF, Core i9-13900KS и Core i9-14900KS. Эти профили имеют разные уровни в зависимости от возможностей материнских плат по подаче питания.
Заявление Intel:
«Несколько производителей материнских плат выпустили профили BIOS с названием “базовый профиль Intel” (Intel Baseline Profile). Однако данные профили BIOS не соответствуют рекомендациям “настройки Intel по умолчанию” (Intel Default Settings), которые Intel недавно предоставила своим партнёрам и которые связанны с вопросом нестабильной работой процессоров Core 13-го и 14-го поколений. Настройки “базового профиля Intel” в BIOS, по-видимому, основаны на рекомендациях по энергоснабжению, ранее предоставленных Intel производителям и описывающих различные варианты энергоснабжения для процессоров Core 13-го и 14-го поколений в зависимости от возможностей материнской платы.
Intel не рекомендует производителям материнских плат использовать “базовые” настройки электропитания на тех материнских платах, которые способны работать с более высокими значениями по электропитанию. Рекомендуемые Intel “настройки Intel по умолчанию” представляют собой комбинацию функций тепловых защит и настроек электропитания в сочетании с выбором возможных профилей электропитания с учётом возможностей [той или иной] материнской платы. Intel рекомендует покупателям использовать профиль с максимально доступными параметрами питания с учётом его совместимости с той или иной платой как указано в таблице ниже».
На тот случай, если тот или иной производитель материнских плат пока не предоставил обновлённые версии BIOS, в которых был реализован профиль «настройки Intel по умолчанию», компания опубликовала список настроек, которые можно выставить в BIOS материнских плат вручную.
Рекомендуемые «настройки Intel по умолчанию». Источник изображения: Intel/HardwareLuxx
В своём новом заявлении Intel опять же не уточняет, являлись ли проблемы со стабильностью работы её процессоров исключительно результатом реализации нестандартных настроек BIOS материнских плат их производителями или здесь также сыграли роль какие-то другие факторы.
Intel выпустила Core i9-14901KE и восемь других процессоров без E-ядер 21.07.2024 [00:50]
Компания Intel без особого шума представила новую серию процессоров в рамках своего 14-го поколения настольных CPU, особенностью которых является отсутствие энергоэффективных E-ядер (E-Cores), которые до сих пор были обязательным атрибутом представителей семейства Raptor Lake.
Всего представлено 9 новых моделей, которые получили индекс «E» в названии, хотя в соответствии со спецификацией, в общей сложности их 11. Все они построены исключительно на производительных P-ядрах (P-Cores) архитектуры Raptor Cove и, по словам Intel, ориентированы на встраиваемые системы и коммерческий сегмент. Новые процессоры имеют привычное LGA 1700-исполнение, поэтому нельзя исключать, что некоторые дистрибьюторы и розничные сети могут предлагать системы, собранные на их базе.
Как сообщает ресурс Wccftech, флагманом новой линейки стал Core i9-14901KE. Он имеет 8 ядер и 16 потоков, базовую тактовую частоту 3,8 ГГц и максимальную частоту в турбо-режиме 5,8 ГГц. Объём кеш-памяти составляет 36 Мбайт L3 и 16 Мбайт L2. Заявленный TDP/PL1 — 125 Вт. Интересно, что этот процессор поддерживает разгон, что нетипично для встраиваемых систем.
Помимо флагмана, в линейку вошли модели Core i7 и Core i5 с 8 и 6 ядрами соответственно. Для всех серий также будут доступны энергоэффективные T-версии и варианты без встроенной графики (F).
На данный момент новые процессоры не появились в открытой продаже. Вероятно, они действительно не предназначены для массового рынка, поэтому их появление в рознице не гарантировано. Но Intel готовит и другие CPU только с P-ядрами. В частности, ожидается выход серии Bartlett Lake-S с 12 производительными ядрами, но уже в 2025 году.
Возможно, выпуск этих процессоров связан с недавно нашумевшей проблемой стабильности моделей 13-го и 14-го поколений, так как отказ от E-ядер потенциально может улучшить ситуацию для определенных сценариев использования.
План прекращения поддержки старых процессоров ARM в ядре Linux 01.08.2024 08:44
Арнд Бергман (Arnd Bergmann), отвечающий за пакеты с ядром в SUSE, опубликовал в списке рассылки разработчиков ядра Linux план избавления ядра и сборочного инструментария на базе GCC от кода для поддержи старых CPU ARM и связанных с ними ABI, наборов инструкций и возможностей ядра. План пока находится на стадии RFC, т.е. выставлен для обсуждения сообществом. В случае одобрения плана, удаление старых процессоров ARM предлагается начать в ядре Linux 6.12, релиз которого ожидается в декабре. Первыми кандидатами на удаление названы ARMv4 (без удаления ARMv4T), iWMMXt, BE32 и OABI.
Прекращение поддержки старых CPU ARM в ядре пересекается с прекращением их поддержки в GCC - часть представленных для удаления CPU уже не поддерживается в свежих ветках GCC, а часть планируют удалить в будущих выпусках, что упростит модернизацию и реализацию новых возможностей в компиляторе. Удаление поддержки архитектуры в GCC потребует удаления её поддержки и из ядра в случае повышения минимально поддерживаемой ядром версии GCC (сейчас для сборки ядра требуется как минимум версия GCC 5.1).
Архитектуры, чипы и расширения, которые предлагается удалить из ядра:
ARMv3 - поддержка уже прекращена в GCC 9.
ARMv4 - используется для ещё находящихся в обиходе процессоров StrongARM и FA526, при этом самые новые из данных чипов выпущены около 20 лет назад. Поддержка ARMv4 прекращена в Debian 5.0. Предлагается вначале прекратить поддержку ARMv4 в GCC, а через несколько лет и в ядре.
ARMv4T - в обиходе встречаются 6 семейств SoC с ядрами ARM720T, ARM920T и ARM922T, которые распространены больше, чем SoC на базе ARMv4. Поддержка ARMv4T прекращена в Debian 9.0. В ядре поддержку ARMv4T планируют прекратить, не раньше прекращения поддержки ARMv5.
ARMv5 - используется на около 1/3 из всех поддерживаемых в ядре платформ, но большинство из данных платформ близки к окончанию жизненного цикла. Debian продолжает поддерживать ARMv5, но из-за отсутствия FPU и атомартных операций сохранять поддержку становится всё труднее и, вероятно, в скором времени порт Debian для ARMv5 будет переведён в число неофициальных.
Начальные поколения ARMv6 - используются в таких SoC, как ARM1136r0p (NXP i.MX31) и OMAP24xx (Nokia N8xx), но их поддержка требует хаков для работы в ядрах с SMP.
ARMv6K - используется в ARM1176 (Raspberry Pi 1, AST2500) и ARM1136r1. В ядре нет препятствий для прекращения поддержки, но в дистрибутивах возникают сложности из-за несоответствия типовому набору armv7-a+vfpv3-d16.
ARMv7-M - используется в микроконтроллерах на базе Cortex-M3/M4/M7, которые остаются последними поддерживаемыми в ядре чипами без блока управления памятью (MMU). Работа над ядрами на системах без MMU прекращена в 2017 году, после переключения для подобных чипов на развитие RTOS, таких как Zephyr. Предлагается удалить поддержку ARMv7-M в 2027 году, спустя 10 лет, после прекращения разработки, несмотря на продолжение поддержки в GCC.
iWMMXt - в ядре уже прекращена поддержка CPU ARMv7 PJ4 (MMP2, Berlin), после чего не осталось находящихся в обиходе систем, использующих данный набор инструкций. Поддержка iWMMXt уже прекращена в Clang и предложена для удаления из GCC.
BE32 (big endian ARMv5) - используется лишь в одном SoC Intel IXP4xx. В старых версиях Debian поддерживался только режим little-endian, но в драйверах остаются нерешённые проблемы. Предлагается удалить поддержку BE32 из GCC и ядра, так как в драйверах за несколько лет никто так и не попытался исправить проблемы.
BE8 (big-endian ARMv7) - во многих драйверах имеются проблемы, прекращено тестирование работы и нет сведений об остающихся в обиходе устройствах. Режим BE8 может представлять интерес для тестирования компонентов пространства пользователя на системах big-endian, поэтому поддержку BE8 планируют сохранить в ядре и GCC в течение как минимум нескольких лет до того, она начнёт приводить к проблемам.
Предложенные для удаления возможности ядра Linux:
Структура param_struct, используемая до ATAGS (ARM Tag-Area) - объявлена устаревшей ещё в 2001 году, но ещё используется в коде для платформ RiscPC и Footbridge.
Файлы с параметры на базе структуры ATAGS (использовалась для передачи информации о конфигурации до Device Tree) - в ядре остаётся 29 файлов, связанных с 10 платформами SoС, использующих ATAGS.
OABI (Old ABI, старый ABI для архитектуры ARM) - почти везде теперь используется EABI (Embedded ABI). OABI является причиной многих ошибок, так как разработчики драйверов перестали учитывать некоторые связанные с ним особенности. Поддержка OABI при сборке компонентов для пространства пользователей прекращена в GCC 4.8, но для ядра оставлен флаг "-mabi=apcs-gnu". Предлагается пока оставить OABI, но усложнить включение по недосмотру.
Режим совместимости с OABI (OABI_COMPAT) - позволяет выполнять исполняемые файлы, собранные для OABI, используя ядро с EABI. Возникают отдельные проблемы в драйверах из-за несовместимости с ioctl, но трудоёмкость сопровождения данного режима заметно меньше, чем сопровождение ядер с OABI. Для сохранения поддержки StrongARM будет рациональным сохранить поддержку OABI или OABI_COMPAT.
NWFPE (No Floating Point Emulator, эмулятор для выполнения операций с плавающей запятой) - патчи для удаления были предложены ещё 11 лет назад, но NWFPE требуется для работы некоторых компонентов пространства пользователя, собранных для OABI, поэтому поддержку NWFPE рекомендовано сохранить до тех, пор пока в ядре остаётся поддержка OABI или OABI_COMPAT.
Highmem (используется для управления памятью в областях после 1 ГБ) - большинство ARM-систем могут работать без включения highmem или могут использовать CONFIG_VMSPLIT_2GB для доступа к первым 2ГБ физической памяти. Ведётся работа по организации доступа к 4 ГБ ОЗУ на системах с LPAE (Cortex-A7/A15), после завершения которой поддержка Highmem может быть удалена.
Sparsemem - требуется для систем для которых нужен highmem.
Предложенные для удаления платформы:
RiscPC - старейшая из поддерживаемых в ядре платформ. Не поддерживается в GCC, начиная с ветки 9.x из-за удаления поддержки ARMv3. Сопровождающий продолжает тестировать работу ядра на данной платформе, но реальных пользователей, судя по всему, уже нет, поэтому поддержка может быть прекращена в случае потери интереса сопровождающего.
SA1100, Footbridge - устаревшие платформы, сохраняемые разве что из соображений ностальгии. Почти все файлы с описанием плат для данных платформ были удалены в ядре 6.3, остаётся только поддержка устройств ipaq h3600, assabet, netwinder и ebsa285. Вопрос удаления зависит от намерений сопровождающего.
Gemini, Moxart - используют CPU на базе ARMv4. Чипы выпускались более 20 лет назад, но их поддержка не требует дополнительных усилий в сопровождении, поэтому нет смысла удалять их до удаления платформы StrongARM.
Файлы для поддержки PXA - платформы находятся в заброшенном виде и вышли из обихода, если интерес к ним не вернётся, их намерены удалить в начале 2025 года.
OMAP1 - с одной стороны остаётся единственной платформой на базе ARMv4T/ARMv5 без поддержки Device Tree и не наблюдается никаких движений по переходу на Device Tree, но с другой стороны у платформы остаются пользователи.
Nspire, AT91RM9200, CLPS711X, EP93xx, iMX1 - используют CPU на базе ARMv4T. Ведётся работа по переводу описаний плат на Device Tree, но смысл поддерживать их остаётся только пока сохраняется поддержка ARMv5.
OMAP24xx - единственная платформа на базе ARMv6, имеющая активных пользователей. Сохранение поддержки зависит от сохранения поддержки CPU arm1136r0.
iMX31 - отсутствуют сведения о наличии активных пользователей, но нет смысла удалять раньше OMAP2.
S3C64xx (Cragganmore) - единственная платформа без поддержки Device Tree, построенная на базе ARMv6K. Платформа продолжает использоваться для тестирования звуковых кодеков, поэтому удаление отложено до того, как тестирование не будет переведено на другую плату.
Orion5x, mv78xx0 - вопрос удаления планируют рассмотреть в начале следующего года.
iMX35, WM8750, AST2500, BCM2835 - хорошо поддерживаются и имеют активных пользователей, удалять пока не планируется.
stm32f4/f7/h7 - микроконтроллеры без MMU, сопровождение в ядре продолжается и имеются активные пользователи. Вопрос удаления планируют рассмотреть в 2026 году.