Ядерные вычисления
![]() | В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
Ядерные вычисления — это тип вычислений, который позволяет потокам либо создавать новые потоки, либо объединять множество потоков в один. Целью ядерных вычислений является использование возможностей многопоточной обработки современных многоядерных процессоров, при этом наблюдается тенденция к увеличению их аппаратной способности вычислять больше потоков, чем у процессоров предыдущего поколения. [1] [2]
Ядерные вычисления сосредоточены на обработке в реальном времени таких вещей, как мультимедиа, например обработка звука, где существует крайний срок в реальном времени (частота дискретизации в Гц). По этой причине он не должен блокироваться , а вычислительные процессы, изменяющие общую память, должны быть атомарными (выполняться за один такт без блокировки).
Ядерные вычисления позволяют вычислительному потоку использовать деление потоков для превращения одного потока во множество или слияние потоков для превращения многих потоков в один.
Аналогия с ядерными реакциями
[ редактировать ]Как следует из названия «ядерные вычисления», существует аналогия между ядерными реакциями и ядерными вычислениями.
Аналогия с ядерным делением
[ редактировать ]В ядерной физике атомы распадаются или реагируют, когда ядро атома распадается, образуя несколько атомов. В ядерных вычислениях вычислительный поток разбивается на несколько потоков обработки.
Аналогия с ядерным синтезом
[ редактировать ]В ядерной физике атомы могут реагировать вместе и сливаться, когда несколько атомных ядер могут сливаться в одно ядро. В ядерных вычислениях несколько вычислительных потоков сливаются в один поток обработки.
Аналогия компонентов
[ редактировать ]Ядерные вычисления | Ядерная физика |
---|---|
поток обработки | атомное ядро |
сигнализация и копирование памяти (между потоками) | выделение энергии (в результате ядерной реакции между ядрами) |
Скорость
[ редактировать ]Ядерные взрывы быстрые и незамкнутые [ нечеткий ] . Что предполагает некоторые требования: [ нужна ссылка ] :
- без замка
- параллельный
- заказал
- легкий вес
- низкая задержка
Описание
[ редактировать ]Деление нити
[ редактировать ]Концептуально вычисление деления может вызвать цепную реакцию, когда один поток может сигнализировать многим потокам о начале обработки, и они также могут сигнализировать другим потокам о начале обработки. Компьютер может быть голоден, когда у него заканчиваются ресурсы и он останавливается - либо из-за нехватки памяти, питания, либо дисковых ресурсов.
Сплавление резьбы
[ редактировать ]Слияние вычислений — это тип вычислений, запускаемых пороговым значением, когда несколько потоков сигнализируют одному ожидающему потоку, который начинает выполнение, как только необходимое количество сигналов потока превышает порог ожидающего потока.
Примеры реализации
[ редактировать ]Связь | Язык программирования | Лицензия |
---|---|---|
Ядерная обработка | С++ | Бесплатная лицензия с сохранением авторских прав |
История
[ редактировать ]Предыдущая аналогия между ядерными реакциями и вычислениями называлась петлевым делением и синтезом , которые были формами предварительной обработки компилятора . Деление циклов (распределение циклов) позволяло компилятору во время компиляции разбить один вычислительный цикл на отдельные циклы. Слияние циклов (застревание циклов) позволило компилятору объединить множество вычислительных циклов в один во время компиляции. Эти процессы не находились под непосредственным контролем программиста, а определялись и контролировались компилятором. В отличие от деления и синтеза петли, ядерные вычисления деления и синтеза находятся под непосредственным контролем программиста или программы во время выполнения.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Ховард, Джейсон и др. «48-ядерный процессор передачи сообщений IA-32 с DVFS и 45-нм CMOS». Сборник технических статей конференции по твердотельным схемам (ISSCC), IEEE International, 2010 г. ИИЭР, 2010.
- ^ Ферри, Дэвид и др. «Служба планирования в реальном времени для параллельных задач». Симпозиум по технологиям и приложениям реального времени, встраиваемым технологиям и приложениям (RTAS), 19-я конференция IEEE, 2013 г. ИИЭР, 2013.