`

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

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

BEST CIO

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

Человек года

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

Продукт года

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

 

Чип Swarm ускоряет и упрощает параллельные программы

+11
голос
Чип Swarm ускоряет и упрощает параллельные программы

Теоретически, программа на 64-ядерной машине должна работать в 64 раза быстрее, чем на одном ядре. Но на практике это получается редко: большинство компьютерных программ последовательны по своей природе и с трудом поддаются оптимизации для параллельного исполнения.

В номере за май/июнь журнала IEEE Micro исследователи из лаборатории CSAIL (Computer Science and Artificial Intelligence Laboratory) Массачусетского технологического института представят чип новой конструкции, Swarm, который должен сделать параллельные программы не только более эффективным, но и простыми в написании.

В симуляциях, Swarm-версии шести распространенных алгоритмов сравнивали с лучшими параллельными версиями, индивидуально скомпонованными опытными программистами. Оказалось, что Swarm-варианты работали в 3-18 раз быстрее, и при этом содержали на порядок меньше кода. А в одном случае, Swarm получил 75-кратное ускорение программы, которую разработчиками уже многие годы не удавалось распараллелить вручную.

От других многоядерных процессоров Swarm отличает дополнительная схема приоритизации задач. Она расставляет метки времени на процессах и отправляет на параллельное выполнение те, что имеют самый высокий приоритет. Эти задачи могут порождать собственные низкоприоритетные процессы, которые Swarm автоматически вставляет в своё расписание.

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

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

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

+11
голос

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

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

 

Ukraine

 

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