Валентин Арьков - Организация параллельных потоков. Часть 1. Лабораторный практикум

Организация параллельных потоков. Часть 1. Лабораторный практикум
Название: Организация параллельных потоков. Часть 1. Лабораторный практикум
Автор:
Жанры: Руководства | Книги о компьютерах | Техническая литература | Прочая образовательная литература
Серии: Нет данных
ISBN: Нет данных
Год: Не установлен
О чем книга "Организация параллельных потоков. Часть 1. Лабораторный практикум"

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

Бесплатно читать онлайн Организация параллельных потоков. Часть 1. Лабораторный практикум


© Валентин Юльевич Арьков, 2020


ISBN 978-5-4498-3657-1

Создано в интеллектуальной издательской системе Ridero

Введение

Большинство современных процессоров в настольных компьютерах и мобильных устройствах – многоядерные. Чтобы эффективно использовать такие вычислительные ресурсы, необходимо составлять параллельные программы. Для этого можно задействовать параллельные потоки либо параллельные процессы.

В данной работе рассматривается технология параллельного программирования потоков Microsoft Windows встроенными средствами, без специальных библиотек. Для составления и компиляции программ на Си используется бесплатная интегрированная среда разработки Microsoft Visual StudioCommunity Edition.

Общие теоретические сведения об организации параллельных вычислений можно найти в соответствующей литературе [1—6]. В данной работе мы рассматриваем только основы организации параллельных потоков.

1. Общие сведения о работе

Целью работы является изучение технологии программирования параллельных потоков Microsoft Windows.

Основные этапы выполнения работы:

– Процессы и потоки

– Процессоры и ядра

– Компилятор

– Параллельные потоки

– Состояние процесса

– Время выполнения

– Ускорение и эффективность

– Привязка задач к ядрам

– «Гонка» за доступ к данным

– Критическая секция

По результатам выполнения работы оформляется отчёт.

1.1. Составление и оформление отчёта

Отчёт оформляется в виде рабочей книги Microsoft Excel.

Состав отчёта:

– Титульный лист

– Оглавление

– Остальные листы

Для удобства навигации вкладки листов нумеруем.

В оглавлении делаем ссылку на каждый лист.

Подробнее оформление отчёта в пакете Excel описано в работе [7].

Задание. Создайте файл отчёта и оформите титульный лист и оглавление.

1.2. Ключевые определения

Перед началом выполнения работы необходимо определиться с основными терминами.

Задание. Выясните, что означают перечисленные термины:

– прикладная программа (application);

– алгоритм программы

– исходный текст программы;

– компилятор;

– вычислительный процесс (process);

– поток исполнения / выполнения (thread);

– многопоточность;

– центральный процессор (CPU);

– ядро микропроцессора (Core);

– HyperThreading;

– виртуальный процессор.


Заметим, что независимо от физической конфигурации компьютера, операционная система представляет все вычислительные устройства как виртуальные процессоры.

Задание. Запустите Task Manager (Диспетчер задач) и определите следующие параметры:

– число виртуальных процессоров;

– размер доступной оперативной памяти;

– число выполняемых процессов;

– число потоков – общее и в каждом процессе;

– уровень загрузки процессора в целом и каждого виртуального процессора.

2. Организация вычислительных экспериментов

2.1. Конфигурация компьютера

Возможности улучшения вычислительной производительности компьютера ограничены его конфигурацией. Поэтому нам предстоит познакомиться со своим компьютером.

Задание. Ознакомьтесь с конфигурацией компьютера и параметрами системы с помощью следующих средств:

– свойства компьютера;

– диспетчер устройств;

– параметр окружения NUMBER OF PROCESSORS;

– сайт производителя процессора;

– диспетчер задач.

Опишите в отчёте конфигурацию и состояние системы:

– процессор;

– разрядность процессора;

– число ядер;

– поддержка HyperThreading;

– версия операционной системы;

– разрядность операционной системы;

– число выполняемых потоков на ядро;

– число виртуальных процессоров;

– объём занятой оперативной памяти;

– объём виртуальной памяти

– наличие подкачки.

2.2. Среда разработки

Данная работа выполняется с использованием среды разработки Microsoft Visual Studio. Далее рассматриваются примеры программ на языке программирования С, хотя компилятор поддерживает также и С++.

В работе используется бесплатная версия среды разработки:

Community Edition.

Дистрибутив находится на сайте

VisualStudio.com.

Рекомендуется использовать английскую версию среды программирования.

Обратите внимание на название каталога, в который установлен компилятор.

В случае 32-разрядной ОС можно установить только 32-разрядные приложения. Каталог для установки:

Program Files.

В случае 64-разрядной ОС можно установить как 32-разрядные, так и 64-разрядные приложения. Каталоги для установки – соответственно:

Program Files (x86)

Program Files.

Далее мы будем создавать именно 32-разрядные приложения, причём работающие в командной строке.

Задание. Проверьте наличие компилятора на компьютере. Если компилятор установлен, запустите его. Если компилятор отсутствует, установите его.

Опишите в отчёте параметры компилятора:

– версия;

– язык интерфейса;

– разрядность.

3. Приёмы программирования

3.1. Программа Hello, World!

Hello, World – это первая программа для знакомства со средой разработки и процедурой компиляции.

Запустите Visual Studio. Создайте новый проект.

File – New – Project.

Выберите создание консольного приложения:

Create a new project – Empty project – Next.

Укажите название проекта:

Project name.

Каталог для хранения проекта:

Location.

Ставим галочку в строке:

Place solution and project in the same directory.

Нажмите кнопку

Create.

Добавьте файл с исходным текстом к проекту:

Solution Explorer – Source Files – [Контекстное меню] – Add – New Item.

В окне

Add New Item

установите

Visual C++ – Code – C++ File (.cpp).

Укажите название файла и его расположение. Нажмите кнопку Add.

Введите текст программы (рис. 3.1).


Рис. 3.1. Программа Hello, World


Сохраните файл, нажав комбинацию клавиш:

Ctrl + S.

Установите конфигурацию проекта

Release;

х86.

Чтобы скомпилировать исполняемый файл, вызываем в верхнем меню

Build – Solution.

Для запуска программы на выполнение используем комбинацию клавиш:

[Ctrl + F5].

Сохранение файла вызывается с помощью следующей комбинации клавиш:

[Ctrl + S].

Рекомендуем создавать проекты в подкаталогах одного рабочего каталога. Названия проектов, файлов и каталогов должны быть короткими и информативными. Чем короче путь к файлу, тем легче будет до него добраться в командной строке.

Задание. Ознакомьтесь с историей программы «Hello, World» на сайте Википедии. Выясните, как правильно переводится эта фраза на русский язык.

Задание. Прочитайте в Википедии статью Консоль. Выясните, что означает слово «консоль».

Задание. Создайте проект и запустите программу на выполнение:

– Создайте новый проект.

– Добавьте файл типа *.С.

– Введите исходный текст программы.

– Скомпилируйте проект и запустите программу.

– Скомпилируйте проект.

– Запустите программу из среды разработки.

– Запустите программу из Проводника Windows.

Для работы в командной строке нужно запустить командное окно:

[Win + R] – cmd – OK.

Чтобы перейти на нужный диск, введите букву и двоеточие. Например, для перехода на диск D:, нужно ввести

d:

Переход между каталогами – команда 


С этой книгой читают
Изучая операционные системы, важно и понимать теорию, и уметь практически работать на компьютере. Функции любой операционной системы сводятся к понятию управления. Реализация этих функций – это выбор интерфейса пользователя: командная строка, файловый менеджер или оконная система. В курсе ОС мы рассматриваем все три вида интерфейса – практически, но с пониманием теории. Для упражнений будем использовать популярную ОС, название которой буквально п
Гистограмма – это один из самых простых инструментов статистического управления качеством производства. В этой работе будет использоваться электронная таблица для создания исходных данных, а также для построения и анализа гистограммы. Можно также использовать любой другой программный инструмент, позволяющий строить гистограммы.
Перед вами продолжение серии пособий, позволяющих познакомиться с основными технологиями бизнес-аналитики. Многое можно сделать в рамках электронной таблицы, которая превращается в интуитивно понятный интерфейс к продвинутым инструментам анализа данных.В данной работе мы рассмотрим создание реляционной модели и визуализацию иерархии в агрегированных данных с использованием специализированных надстроек.
Системы бизнес-аналитики работают с различными источниками данных с помощью функций ETL (Extract-Transform-Load). Название ETL можно перевести как «извлечение, преобразование и загрузка данных». Имеется в виду загрузка в хранилище данных для дальнейшей обработки в системе бизнес-аналитики.В простейшем случае это загрузка данных в виде одной, объединённой, консолидированной таблицы. В данной работе мы познакомимся с основными этапами ETL на пример
Почему у некоторых людей желания исполняются быстро, а у других не исполняются вообще? «От „хочу“ к „имею“» – инструкция по осознанию, планированию и реализации своих желаний. С ее помощью вы научитесь слушать и слышать себя, поймете, какое направление выбрать в жизни, решите, что на самом деле для вас ценно, и сможете воплощать свои мечты в жизнь. Желайте осознанно, и ваши желания обязательно исполнятся! А книга вам в этом поможет.
В книге изложен мой опыт познания автомобильного газового оборудования. Я ознакомлю Вас с эволюцией автомобильного оборудования, поделюсь тонкостями его монтажа.
Эта книга-учебник предназначена для всех людей, желающих начать свое дело, а также для предпринимателей, которые хотели бы сделать свое дело более социально и экологически полезным и организованным. Книга также будет полезна людям, ищущим ответ на вопрос, чем заняться в жизни. Книга начинается с выяснения вопросов твоего предназначения и затем переходит к изучению инструментов создания бизнеса. Эта книга для людей, которые намерены стать независи
В своей книге я рассказываю, как мы с сыном-второклассником шли к восстановлению нормального зрения и доказали, что быстрое обретение четкого видения без очков возможно. Знакомлю с расписанным по минутам распорядком одного дня нашего марафона. Даю необычные рекомендации по питанию, с учетом группы крови ребенка. В книгу вошли, помимо классических, оригинальные гимнастики, игры, упражнения, неожиданные дополнительные способы, помогающие быстро при
Альберт Эйнштейн – гений от физики, прекрасный ученый, революционер. Про него много шуток и мемов, невероятных историй и анекдотов. Каковы его главные достижения и как его теории перевернули мир? Краткая биография легендарного Эйнштейна просто и понятно объяснит вам, в чем заключается ценность этого человека.Будьте в курсе науки – всего за час!
Освоение космоса давно шагнуло за рамки воображения:– каждый год космонавты отправляются за пределы Земли;– люди запускают спутники, часть которых уже сейчас преодолела Солнечную систему;– огромные телескопы наблюдают за звездами с орбиты нашей планеты.Кто был первым первопроходцем в небе? Какие невероятные теории стоят за нашими космическими достижениями? Что нас ждет в будущем? Эта книга кратко и понятно расскажет о самых важных открытиях в обл
Бывает так, что вдруг всё начинает валиться из рук, и налаженная и размеренная жизнь разлетается. Любовник оказывается женат, на работе указывают на дверь, потому что твоё место понадобилось дочке начальницы. Но я, Иоанна, не унываю, ведь за чёрной полосой всегда идёт белая. Вот и мне предложили начать всё сначала, с чистого листа. Забыть прошлое и... Вот уже другой мир, и всё, что помню - своё имя и то, что люблю и умею готовить. Стоп, а это что
Внимание! Произведена замена обложки. Он - демон, исчадие Ада. Люди называют его "нежить", маги считают за расходный материал. Она - чародейка, которой понадобился астральный слуга. Десять лет прошло с тех пор, как она явила его в мир, и вот спустя годы, в заснеженном городе им суждено встретится вновь. Чтобы уничтожить друг друга или навеки стать одним целым - знает только Ледяная Звезда.ВНИМАНИЕ! 18+ Автор обложки Ann Fleur. Цикл "Темное фэнте