8(8412)74-58-38
(с 10-00 до 20-00 МСК)
Зачётик.Ру - помогаем студентам в учёбе

У нас можно недорого заказать курсовую, контрольную, реферат или диплом

Главная / готовые работы / Контрольные работы / Программирование, Базы данных

Многопоточное программирование средствами Open MP - Контрольная работа

Содержание

Преимущества многопоточности

Опасности многопоточности

Производительность

Принципиальная схема программирования в OpenMP

Прагмы OpenMP

Процедуры OpenMP

Переменные среды OpenMP

Примеры использования OpenMP

Директивы в OpenMP

Введение (выдержка)

Многопоточность

Четкое разделение логики многопоточности и бизнес-логики должно быть приоритетным для разработчиков, пишущих приложения с массовым параллелизмом. Для этого существует множество причин: простота разработки, простота отладки, а также простота внесения изменений в приложение. При разработке на C/C++ или FORTRAN’е популярным решением этой проблемы является использование OpenMP. OpenMP – это API

Основная часть (выдержка)

Многопоточность

< Четкое разделение логики многопоточности и бизнес-логики должно быть приоритетным для разработчиков, пишущих приложения с массовым параллелизмом. Для этого существует множество причин: простота разработки, простота отладки, а также простота внесения изменений в приложение. При разработке на C/C++ или FORTRAN’е популярным решением этой проблемы является использование OpenMP. OpenMP – это API для написания эффектного и эффективного многопоточного кода.

В сущности, OpenMP используется путем введения набора инструкций в коде в форме комментариев или аннотаций. Сначала код пишется последовательным, а затем в нужные места добавляются аннотации. А когда код компилируется после этого (OpenMP совместимым компилятором), эти аннотации учитываются, и код компилируется так, чтобы использовать потоки согласно этим аннотациям.

Преимущества многопоточности

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

Другим преимуществом OpenMP является то, что порции кода могут аннотироваться инкрементально, с очень небольшим изменением кода. Это позволяет чаще тестировать код на правильность функционирования, что важно, поскольку разработчик мог бы распараллелить многие порции кода, что затем вызвало бы различия в исполнении кода; такие случаи компилятор редко обнаруживает, и их обязательно нужно обнаруживать путем тестирования.

Заключение (выдержка)

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

Литература

1. Программируемые контроллеры. Стандартные языки и приемы прикладного проектирования. Петров И.В.

2. Программируемые логические контроллеры: практическое руководство для начинающего инженера. Минаев И.Г.

3. Юров В. Assembler учебник.

Информация о работе

Тип: Контрольная работа
Страниц: 11
Год: 2014
500 p.
Не подошла эта работа?
Узнайте стоимость написания
работы по Вашему заданию.

Закажите авторскую работу по Вашему заданию!
Контрольная работа
от 100 p.
cрок: от 1 дня
Реферат
от 600 p.
cрок: от 1 дня
Курсовая работа
от 1000 p.
cрок: от 3 дней
Дипломная работа
от 6000 p.
cрок: от 6 дней
Отчет по практике
от 1000 p.
cрок: от 3 дней
Решение задач
от 150 p.
cрок: от 1 дня
Лабораторная работа
от 200 p.
cрок: от 1 дня
Доклад
от 300 p.
cрок: от 2 дней
Заказать работу очень просто!
Вы оформляете заявку
Получаете доступ в лк
Вносите предоплату
Автор пишет работу
Получаете уведомление
о готовности
Вносите доплату
Скачиваете готовую
работу из лк
X
X