Рост числа процессорных ядер приведет к необходимости смены архитектуры ОС

Исследователи из Массачусетского Технологического института пришли к выводу, что существующие операционные системы испытывают проблемы с эффективностью работы на системах с большим числом процессорных ядер. В качестве граничного значения для SMP-режима в Linux указаны 48-ядреные системы, которые по оценке авторов исследования получат распространение в ближайшие 5-8 лет. Для таких систем придется внести в ОС значительные изменения, связанные с переходом на принципиально иную архитектуру.

При превышении границы в 48 процессорных ядер суммарная производительность Linux будет падать, а не возрастать. Проблема вызвана тем, что несколько ядер часто выполняют лишнюю работу и обрабатывают одни и те же данные, которые нужно держать в памяти чипа во время обработки. Пока память используется, она не доступна для других задач, что приводит к падению производительности из-за "эффекта бутылочного горлышка": c ростом числа ядер задачи, оперирующие с одним набором данных, разбиваются на все более мелкие кусочки.

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

©  OpenNet