`

СПЕЦІАЛЬНІ
ПАРТНЕРИ
ПРОЕКТУ

Чи використовує ваша компанія ChatGPT в роботі?

BEST CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Многоядерность для Linux не проблема

+88
голосов

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

Нет, полагают ученые Массачусетского технологического института, и утверждают, что в ближайшие годы Linux справится с добавлением в компьютерные процессоры новых ядер. Результаты их исследования будут представлены на симпозиуме USENIX Symposium on Operating Systems Design and Implementation, который пройдет в Торонто (Канада) в начале октября.

Чтобы изучить работу Linux на микросхемах будущего, исследователи MIT создавали систему, в которой восемь 6-ядерных чипов моделировали работу 48-ядерной микросхемы. А затем протестировали пакет приложений, которые размещали громоздкие запросы к ОС и по порядку активировали все 48 ядер. В определенный момент добавление дополнительных ядер начало уменьшать производительность системы, чему есть простое объяснение: в многоядерной системе отдельные ядра зачастую выполняют вычисления, использующие один и тот же блок данных, а пока данные затребованы хотя бы одним ядром, их нельзя удалить из памяти. Когда ядро начинает работать с данными, оно увеличивает значение определенного счетчика, а когда заканчивает свою задачу – уменьшает, таким образом в счетчике хранится число ядер, выполняющих операции над данными. Если с данными не работает ни одно ядро (т.е. показания счетчика нулевые), система может их удалить, освобождая память для других процедур.

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

По мнению одного из участников исследования, профессора Рэмзи Арпаки-Дюссо (Remzi Arpaci-Dusseau), когда число процессорных ядер значительно превзойдет 48, всё же потребуются новые архитектуры ОС, но в ближайшие 5-8 лет этого не произойдет.

Ready, set, buy! Посібник для початківців - як придбати Copilot для Microsoft 365

+88
голосов

Напечатать Отправить другу

Читайте также

Вообще-то уже продаются системы с 64 ядрами с линуксом с уже наложенными нужными патчами.
Но в них узкое место -- это ПСП и поэтому далеко не всем это подходит.

 

Ukraine

 

  •  Home  •  Ринок  •  IТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Мережі  •  Безпека  •  Наука  •  IoT