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 preprocessor (PCP). UPC не является надмножеством этих трех языков, а скорее попыткой извлечь лучшие характеристики каждого из них. UPC сочетает в себе преимущества программируемости парадигмы программирования с общей памятью и контроль над компоновкой данных и производительностью парадигмы программирования с передачей сообщений .

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

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