На 56-м ежегодном Международном симпозиуме IEEE/ACM по микроархитектуре исследователи из Калифорнийского университета в Риверсайде (UCR) продемонстрировали подход, при котором любые вычислительные компоненты платформы будут по-настоящему работать одновременно. За счет этого можно вдвое увеличить скорость вычислений и вдвое сократить потребление энергии. Технология может работать на любых процессорах и ускорителях от смартфонов до серверов ЦОД, но требует доработки.
![Источник изображения: II-генерация DALL-E/newatlas.com](https://newsper.ru/wp-content/uploads/2024/02/cpu.jpg)
Источник изображения: II-генерация DALL-E/newatlas.com
“Вам не нужно [для ускорения вычислений] добавлять новые процессоры, потому что они уже есть», – сказал Хунг-Вэй Ценг (Hung-Wei Tseng), адъюнкт-профессор факультета электротехники и вычислительной техники Калифорнийского университета и соавтор исследования. Необходимо лишь грамотно распорядиться имеющимися аппаратными ресурсами, а не выстраивать его в очередь.
Разработанная исследователями платформа, которую они назвали одновременной и гетерогенной многопоточностью (SHMT), отходит от традиционных моделей программирования. Вместо того чтобы предоставлять за один промежуток времени данные только одному из вычислительных компонентов системы – центральному, графическому, тензорному или другому процессору или ускорителю, технология SHMT распараллелирует выполнение кода сразу по всем компонентам одновременно.
![Тестовая платформа Источник изображения: Hsu and Tseng](https://newsper.ru/wp-content/uploads/2024/02/cpu_00.jpg)
Тестовая платформа Источник изображения: Hsu and Tseng
SHMT использует политику планирования многопоточности с учетом такого параметра как quality-aware work-stealing (QAWS), которая не требует больших затрат ресурсов, однако помогает поддерживать контроль качества и баланс рабочей нагрузки. Система выполнения создает и разделяет набор виртуальных операций (vOPS) на одну или несколько высокоуровневых операций (HLOPs) для одновременного использования нескольких аппаратных ресурсов. Затем система выполнения SHMT распределяет эти HLOPS по очереди задач для запуска на целевом оборудовании. Поскольку HLOPS не зависит от оборудования, система выполнения может перенаправлять задачи по мере необходимости на тот или иной компонент вычислительной платформы.
![Сравнение методов распараллелирования обычного, современного гетерогенного и SHMT](https://newsper.ru/wp-content/uploads/2024/02/cpu_01_sm.jpg)
Сравнение методов распараллелирования обычного, современного гетерогенного и SHMT
Что особенно ценно, исследователи на примере созданной ими тестовой платформы показали эффективность работы новых программных библиотек. Они создали гибрид, который можно считать как смартфоном, так и подобием ПК и даже сервера. На базе объединяющей платы с разъемом PCIe был создан компьютер по комбинации модуля NVIDIA Nano Jetson с четырехъядерным процессором ARM Cortex-A57 (CPU) и 128 графическими ядрами архитектуры Maxwell (GPU). Через слот M.2 Key E на плате был подключен ускоритель Google Edge (TPU).
![Ускорение вычислений SHMT в зависимости от избранной политики](https://newsper.ru/wp-content/uploads/2024/02/cpu_02_sm.jpg)
Ускорение вычислений SHMT в зависимости от избранной политики
Основная память представленной системы – это 4 Гбайт LPDDR4 с частотой 1600 МГц и скоростью 25,6 Гбит/с, где хранятся общие данные. Модуль Edge TPU дополнительно содержит 8 Мбайт памяти, а в качестве операционной системы использовался Ubuntu Linux 18.04.
![Сравнение потребления в активном режиме и при простое при обычных вычислениях и с использованием SHMT](https://newsper.ru/wp-content/uploads/2024/02/cpu_03.jpg)
Сравнение потребления в активном режиме и при простое при обычных вычислениях и с использованием SHMT
Запуск на импровизированной гетерогенной платформе пакета SHMT с использованием стандартных приложений для тестирования показал, что при эффективной политике фреймворк QAWS показывает увеличение скорости вычислений в 1,95 раза и значительное сокращение потребления – на 51% по сравнению с базовым методом распределения вычислений. Если масштабировать этот подход для использования в составе ЦОД, выигрыш обещает оказаться колоссальным и при этом все «железо» останется неизменным — менять ничего не придется. Предложенное решение пока не готово к внедрению, но наверняка легко найдет заинтересованных в этом лиц.
Если вы заметили ошибку, выделите ее мышью и нажмите CTRL+ENTER.