Site icon Naked Science

Разработан процессор для лаконичного параллельного программирования

Разработан процессор для лаконичного параллельного программирования – иллюстрация к материалу на Naked Science

©Wikipedia

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

 

Синхронизация ядер обеспечивается благодаря реализации фильтра Блума, проверяющего принадлежность заданного элемента к множеству. По словам профессора Даниэля Санчеса, перегруженность адресами может спровоцировать ложное, но всегда положительное срабатывание фильтра, исключающее отказ в хранении данных.

 

В рамках тестирования исследователи сравнили мощности версий Swarm и модифицированных версий параллельных вычислительных систем — лучших из существующих — на шести алгоритмах. Помимо общего преобладания скорости, для выполнения алгоритма новому процессору требовалась 0,1 от привычного объема кода. В одном случае Swarm ускорил выполнение задачи в 75 раз, однако ее распараллеливание оказалось ученым не под силу.

 

По мнению профессора Луиса Кезе, разработанная технология включает в себя лучшие аспекты транзакционной памяти и потоков управления:

«Транзакционная память представляет собой механизм, который следит за тем, чтобы несколько параллельных процессов не наступали друг другу на пятки. Такая схема гарантирует упорядоченное обновление общих ячеек памяти. Поток управления — близкая техника: сделай это, не будучи уверен, что задачи выполняются параллельно, а если нет, отмени и сделай вновь, но последовательно. Архитектура Санчеса вбирает многие позитивные особенности этих подходов и создает свой».

Exit mobile version