
«Многопоточное программирование средствами Open MP» - Контрольная работа
- 27.11.2015
- 11
- 1083
Содержание
Введение
Выдержка из текста работы
Заключение
Список литературы

Автор: zcah4ez1
Содержание
Преимущества многопоточности
Опасности многопоточности
Производительность
Принципиальная схема программирования в 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 учебник.
Тема: | «Многопоточное программирование средствами Open MP» | |
Раздел: | Программирование, Базы данных | |
Тип: | Контрольная работа | |
Страниц: | 11 | |
Стоимость текста работы: | 500 руб. |
Закажите авторскую работу по вашему заданию.
- Цены ниже рыночных
- Необходимый уровень антиплагиата
- Прямое общение с исполнителем вашей работы
- Бесплатные доработки и консультации
- Минимальные сроки выполнения
- Пишем сами, без нейросетей
Мы уже помогли 24535 студентам
Средний балл наших работ
- 4.89 из 5
написания вашей работы
Предыдущая работа
Организация и планирование производстваСледующая работа
Программное обеспечение СУТП-
Дипломная работа:
Нелинейное программирование с сепарабельными функциями
32 страниц(ы)
Введение--------------------------------------------------------------------------------------3
1. Теоретические аспекты-----------------------------------------------------------------51.1. Общие сведения о численных методах оптимизации---------------------5РазвернутьСвернуть
1.2. Методы нелинейного программирования------------------------------------6
1. 3. Алгоритмы решения задач с ограничениями------------------------------9
1.4. Сепарабельное программирование-------------------------------------------10
1.5. Описание метода Дэвидона – Флетчера – Пауэлла--------------------18
2. Выбор актуальной оптимизационной задачи-------------------------------------22
2.1Сущность и актуальность задачи---------------------------------------------23
2.2. Предварительная постановка задачи---------------------------------------23
3. Строгая постановка и решение прикладной оптимизационной задачи-----24
3.1. Строгая постановка задачи----------------------------------------------------24
3.2. Реализация метода решения оптимизационной задачи вручную------25
3.3. Реализация метода решения оптимизационной задачи на ЭВМ-------25
4. Анализ результатов решения оптимизационной задачи и оценка степени достижения цели---------------------------------------------------------------------------26
Заключение---------------------------------------------------------------------------------27
Список литературы------------------------------------------------------------------------28
Приложение. Листинг программы-----------------------------------------------------29
-
Контрольная работа:
История и перспективы развития языков программирования
25 страниц(ы)
Введение 3
1. История развития языков программирования 6
1.1. Языки программирования низкого уровня 6
1.2. Языки программирования высокого уровня 71.2.1. Принципы структурного программирования 9РазвернутьСвернуть
1.2.2. Принципы объектно-ориентированного программирования 10
1.3. Совершенствование языков и систем программирования 12
2. Стандартизация языков программирования 16
3. Современные тенденции и перспективы развития языков программирования 18
Заключение 22
Литература 25
-
Курсовая работа:
30 страниц(ы)
Введение 3
1 История развития языков программирования 5
1.1 Машинный язык 6
1.2 Ассемблер 7
1.3 Первые языки программирования высокого уровня 101.4 Алгоритмические языки программирования 10РазвернутьСвернуть
1.5 Языки объектно-ориентированного программирования 11
1.6 Языки программирования для компьютерных сетей 11
1.7 Языки программирования на платформе .NET 12
2 Обзор современных языков программирования 13
2.1 Си и его разновидности 13
2.2 Паскаль 20
2.3 Фортран 22
2.4 Бейсик 24
Выводы и предложения 27
Список литературы 28
Приложения 29
-
Дипломная работа:
Алгоритмы принятия решения для учебных задач в программированном обучении
83 страниц(ы)
ВВЕДЕНИЕ 3
ГЛАВА 1. ПСИХОЛОГИЧЕСКИЕ ПЕДАГОГИЧЕСКИЕ ОСНОВЫ ПРОГРАММИРОВАНОГО ОБУЧЕНИЯ
1.1. Педагогические и психологические основы процесса обучения1.1.1. Традиционное обучение: сущность, достоинства и недостатки 7РазвернутьСвернуть
1.1.2. Проблемное обучение: сущность, достоинства и недостатки 11
1.2. Теория программированного обучения
1.2.1. Сущность программированного обучения 21
1.2.2. Особенности программированного обучения 23
1.2.3. Типы обучающих программ 28
1.2.4. Развитие программированного обучения в отечественной науке
и практике 31
1.2.5. Достоинства и недостатки программированного обучения 32
Выводы 34
ГЛАВА 2. ЭКСПЕРИМЕНТ ПО ИСПОЛЬЗОВАНИЮ АЛГОРИТМОВ ПРИНЯТИЯ РЕШЕНИЙ В ПРОГРАММИРОВАННОМ ОБУЧЕНИИ
2.1. Алгоритмы и организация интерфейса в программированном обучении
2.1.1. Программированное обучение – вид современных педагогических технологий 37
2.1.2. Визуальный интерфейс. Способы описания формальных языков 37
2.1.3. Интеллектуальный интерфейс 44
2.1.4. Алгоритмы в программированном обучении 47
2.2 Экспериментально-практическая часть
2.2.1 Этап подготовки Алгоритм выбора заданий 56
2.2.2. Алгоритм перехода к следующему заданию Адаптивность 57
2.2.3. Алгоритм учебного диалога 58
2.2.4. Алгоритм оценивания результата задания. 59
ПРИЛОЖЕНИЯ 66
ЗАКЛЮЧЕНИЕ 78
ЛИТЕРАТУРА 80
-
Курсовая работа:
Современные системы программирования
30 страниц(ы)
Введение….3
1 Понятие системы программирования….5
1.1 Основные этапы в формировании состава систем программирования….51.2 Понятие и структура системы программирования….7РазвернутьСвернуть
2 Примеры современных систем программирования….13
Заключение….….25
Глоссарий….…27
Список использованных источников…29
Приложения….30
-
Контрольная работа:
Государственное программирование как высшая форма государственного регулирования
27 страниц(ы)
Введение 3
1 Понятие программирования, его сущность 5
2 Классификации государственных программ 14
3. Процедура разработки государственной программы 22Заключение 26РазвернутьСвернуть
Список литературы 28
-
Курсовая работа:
Автоматизация технологических процессов и производств
18 страниц(ы)
Задание
Вариант 14
Исходные данные:
В работе представить:
- блок-схему работы РТК для партии деталей;- циклограмму работы РТК;РазвернутьСвернуть
- подробную сеть Петри для функционирования РТК;
- управляющую программу для станка с ЧПУ при обработке указанных поверхностей. При этом указать траекторию инструмента. Поместить в пояснительную записку образ экрана одной из программ (траекторию инструмента).
-
Курсовая работа:
Проектирование автоматизированных систем. Роботизированный технологический комплекс
25 страниц(ы)
-Структурно-кинематическая схема объекта управления
-Таблица включений
-Начальная циклограмма работы механизма-Ввод элементов памяти в системуРазвернутьСвернуть
-Реализуемая циклограмма работы механизма
-Минимизация логических функций с помощью программы MINWIN-Professional.
-Построение функциональной схемы дискретного автомата
-Моделирование работы дискретного автомата с помощью системы ISaGRAF
-Система управления на элементах И-НЕ
-Разработка принципиальной электрической схемы устройства в системе P-CAD
-Выбор элементной базы из интегральных микросхем средней степени интеграции -
Реферат:
И. Кант: теория познания и учение о «моральной личности». Категории диалектики
14 страниц(ы)
Биография Иммануила Канта 3
Теория познания 3
Этика. Учение о «моральной личности» 5
Диалектика 6
Диалектика по Канту 6Категории диалектики 7РазвернутьСвернуть
Принципы категоричной диалектики 7
Явление и сущность 8
Список используемой литературы 10
-
Курсовая работа:
Автоматическая замерная установка
20 страниц(ы)
Разработка интерфейса оператора АЗУ
Разработка пользовательских окон
Разработка сценариев моделирующих работу АЗУОрганизация связи с удаленным узлом по типу клиент-серверРазвернутьСвернуть
Создание окна алармов
Создание окна трендов реального времени
Создание окна исторических трендов
Окно мнемосхемы -
Контрольная работа:
Расчет электрической цепи однофазного синусоидального тока
7 страниц(ы)
Задание:
- Определить комплексные действующие значения токов;
- Определить показания ваттметров;
- Составить баланс активных и реактивных мощностей;- Записать в общем виде уравнения Кирхгофа в дифференциальном и комплексном формах, полагая, что между двумя индуктивностями есть магнитная связь;РазвернутьСвернуть
- Построить топографическую диаграмму напряжений для всех точек схемы, совместив ее с векторной диаграммой токов.
-
Контрольная работа:
Преобразователи энергии в системах управления технологическим процессом
13 страниц(ы)
Задание
Воспользовавшись паспортными данными электрической машины, выполнить следующее.
1. Построить механические и электромеханические характеристики электрической машины по её паспортным данным=f(M). M=f(S). =f(I)РазвернутьСвернуть
-- текущее значение угловой частоты вращения ротора,
M -- текущее значение момента двигателя,
S --текущее значение скольжения двигателя,
I -- текущее значение тока двигателя.
2. Определить
Sн – величину номинального скольжения двигателя,
Sк – величину критического скольжения двигателя,
Мн – величину номинального момента двигателя,
Мп – величину пускового момента двигателя,
Мк – величину критического момента двигателя,
Ммин – величину минимального момента двигателя,
IН -- номинальную величину тока двигателя,
IП -- величину пускового тока двигателя,
-- угловую частоту вращения ротора, соответствующую скорости идеального холостого хода двигателя,
-- угловую частоту вращения ротора, соответствующую номинальной скорости двигателя,
– угловую частоту вращения ротора, соответствующую величине критического скольжения двигателя.
3. Определить величину электрических и механических потерь машины при номинальном режиме работы двигателя.
4. Определить параметры схемы замещения:
Z1 , Z21 – полные сопротивления цепей статора и ротора,
R1, R21 – активные сопротивления цепей статора и ротора,
X1 , X21 – реактивные сопротивления цепей статора и ротора,
Z21, R21, X21 – сопротивления ротора приведённые к цепи статора.
При этом следует учесть - в практике считают, что существует примерные равенства
Z1 = Z21 = 0,5Z, R1 = R21 , X1 = X21.
5. Построить механические и электромеханические характеристики электрической машины при снижении напряжения сети на 15% номинального значения.
-
Контрольная работа:
Инструментальные средства программирования в СУТП. Архитектура микроконтроллеров
15 страниц(ы)
Введение….3
1. Архитектура микроконтроллеров MCS-51….4
1.1. Блок управления и синхронизации….4
2. Архитектура микроконтроллеров ARM….72.1. Основные характеристики ядра ARM7….7РазвернутьСвернуть
3. Архитектура микроконтроллера AVR….10
3.1. Микропроцессор….10
3.2. Память….10
3.2.1. Память программ (Flash ROM или Flash ПЗУ)….10
3.2.2. Память данных….11
3.2.3. Регистровая память (РОН и РВВ)….11
3.2.4. Энергонезависимая память данных (EEPROM)….11
3.2.5. Оперативная память (ОЗУ или RAM)….11
3.3. Периферия….11
3.3.1. Порты ввода/вывода (I/O)…11
3.3.2. Прерывания (INTERRUPTS)….12
3.3.3. Таймеры/счетчики (TIMER/COUNTERS)….12
3.3.4. Сторожевой таймер (WDT)….12
3.3.5. Аналоговый компаратор (AC)….13
3.3.6. Аналого-цифровой преобразователь (A/D CONVERTER)….13
3.3.7. Универсальный последовательный приемопередатчик (UART или USART)….13
3.3.8. Последовательный периферийный интерфейс SPI….13
3.3.9. Двухпроводной последовательный интерфейс TWI….13
3.3.10. Интерфейс JTAG….13
3.3.11. Тактовый генератор…14
3.3.12. Система реального времени (RTC)….14
3.4. Питание….14
3.4.1. Сброс при снижении напряжения питания (BOD)…14
Заключение….15
Список литературы….16
-
Контрольная работа:
Преобразователи энергии в СУТП. Расчет тиристорного инвертора
8 страниц(ы)
Задание
1. Описание работы схемы
2. Расчет инвертора мощностью 20 кВт и частотой 0,5 кГц
3. Выбор тиристора и диода
Список используемой литературы
-
Контрольная работа:
Диагностика и надежность автоматизированных систем
9 страниц(ы)
Задание
1 Исходные данные
2 Преобразование схемы
3 Расчет вероятности безотказной работы
Выводы
Список используемой литературы
-
Курсовая работа:
Математические основы дискретно-логических систем
9 страниц(ы)
Задача №1
Задача №2
Задача №3
Задача №4
Список используемой литературы