Многопоточное программирование средствами Open MP
Контрольная работа по предмету "ОПЕРАЦИОННЫЕ СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ"
Заполните форму, чтобы купить данную работу
Вы можете купить готовую студенческую работу "Многопоточное программирование средствами Open MP". Также Вы можете заказать оригинальную работу "Многопоточное программирование средствами Open MP". Данная работа будет написана только для Вас. При написании работы "Многопоточное программирование средствами Open MP" Мы выполним все указанные Вами пожелания.
Чтобы заказать работу "Многопоточное программирование средствами Open MP", заполните форму заказа. В строке "Комментарий" Вы можете указать свой план работы "Многопоточное программирование средствами Open MP". Если Вы не имеете своего плана работы "Многопоточное программирование средствами Open MP", напишите объем, срок и другие пожелания и требования.
Категория: Каталог готовых студенческих работ / Контрольная работа
Количество просмотров: 442
Описание работы:
Преимущества многопоточности
Опасности многопоточности
Производительность
Принципиальная схема программирования в OpenMP
Прагмы OpenMP
Процедуры OpenMP
Переменные среды OpenMP
Примеры использования OpenMP
Директивы в OpenMP
Многопоточность
Четкое разделение логики многопоточности и бизнес-логики должно быть приоритетным для разработчиков, пишущих приложения с массовым параллелизмом. Для этого существует множество причин: простота разработки, простота отладки, а также простота внесения изменений в приложение. При разработке на C/C++ или FORTRAN’е популярным решением этой проблемы является использование OpenMP. OpenMP – это API для написания эффектного и эффективного многопоточного кода.
В сущности, OpenMP используется путем введения набора инструкций в коде в форме комментариев или аннотаций. Сначала код пишется последовательным, а затем в нужные места добавляются аннотации. А когда код компилируется после этого (OpenMP совместимым компилятором), эти аннотации учитываются, и код компилируется так, чтобы использовать потоки согласно этим аннотациям.
Преимущества многопоточности
Такой метод параллельного программирования очень выгоден. Так как программа кодируется для последовательного запуска, а для распараллеливания используются всего лишь аннотации, в случае компилирования кода на обычном компиляторе он всего лишь будет их игнорировать. Этот же код можно скомпилировать и с помощью компилятора OpenMP и запустить параллельно в несколько потоков. Это означает, что разработчику не нужно будет изменять код, если программу нужно запускать на машинах с разной архитектурой: и с поддержкой многопоточности, и без такой поддержки.
Другим преимуществом OpenMP является то, что порции кода могут аннотироваться инкрементально, с очень небольшим изменением кода. Это позволяет чаще тестировать код на правильность функционирования, что важно, поскольку разработчик мог бы распараллелить многие порции кода, что затем вызвало бы различия в исполнении кода; такие случаи компилятор редко обнаруживает, и их обязательно нужно обнаруживать путем тестирования.