stringtranslate.com

Унифицированный параллельный C

Unified Parallel C ( UPC ) — расширение языка программирования C , предназначенное для высокопроизводительных вычислений на крупномасштабных параллельных машинах , в том числе с общим глобальным адресным пространством ( SMP и NUMA ) и с распределенной памятью (например, кластерами ). Программисту предоставляется одно секционированное глобальное адресное пространство ; где общие переменные могут напрямую считываться и записываться любым процессором , но каждая переменная физически связана с одним процессором. UPC использует модель вычислений «одна программа и несколько данных» ( SPMD ), в которой степень параллелизма фиксируется во время запуска программы, обычно с одним потоком выполнения на процессор.

Чтобы выразить параллелизм, UPC расширяет ISO C 99 следующими конструкциями:

Язык UPC развился на основе опыта работы с тремя другими более ранними языками, которые предлагали параллельные расширения ISO C 99: AC, Split-C и препроцессор Parallel C (PCP). UPC — это не надмножество этих трех языков, а скорее попытка выделить лучшие характеристики каждого из них. UPC сочетает в себе преимущества программируемости парадигмы программирования с общей памятью и контроль над размещением данных и производительностью парадигмы программирования передачи сообщений .

Смотрите также

Внешние ссылки