Организация параллельных потоков. Часть 1

Организация параллельных потоков. Часть 1

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

Жанры: Научная литература, Компьютерная литература, Технические науки
Серии: -
Всего страниц: 7
ISBN: -
Год издания: 2020
Формат: Фрагмент

Организация параллельных потоков. Часть 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.


Еще от автора Валентин Юльевич Арьков
Анализ и визуализация данных в электронных таблицах

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


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

Гистограмма — это один из самых простых инструментов статистического УПРАВЛЕНИЯ КАЧЕСТВОМ производства. В этой работе будет использоваться пакет Microsoft Excel для создания исходных данных, а также для построения и анализа гистограммы. Можно также использовать любой другой программный инструмент, позволяющий строить гистограммы.


Бизнес-аналитика. Извлечение, преобразование и загрузка данных

Системы бизнес-аналитики работают с различными источниками данных с помощью функций ETL (Extract-Transform-Load). Название ETL можно перевести как «извлечение, преобразование и загрузка данных». Имеется в виду загрузка в хранилище данных для дальнейшей обработки в системе бизнес-аналитики. В простейшем случае это загрузка данных в виде одной, объединённой, консолидированной таблицы. В данной работе мы познакомимся с основными этапами ETL на примере загрузки данных в электронные таблицы.


Бизнес-аналитика. Сводные таблицы. Часть 2

Данная работа посвящена дальнейшему изучению методов бизнес-аналитики на примере «продвинутых» возможностей функций сводных таблиц. Мы продолжаем использовать общий подход к практическому освоению программного пакета: моделирование и исследование. Мы поработаем с генератором случайных чисел и сформируем реалистичные наборы данных для анализа.


Анализ распределения в Excel

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


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

При решении инженерных, экономических и научных задач используются высокопроизводительные вычисления — High Performance Computing или сокращённо HPC. Параллельные программы нужны для того, чтобы использовать вычислительные мощности многоядерных процессоров и графических ускорителей. В данной работе мы рассмотрим технологию автоматической организации параллельных потоков для многоядерных вычислительных машин.


Рекомендуем почитать
Ельцин и его генералы

Виктор Баранец — бывший пресс-секретарь министра обороны России, более десяти лет прослужил в Центральном аппарате Министерства обороны и Генерального штаба; был уволен из армии сразу после публикации отрывков из своей книги в газете “Совершенно секретно”.Непосредственный участник и свидетель многих событий, потрясших Вооруженные Силы России в 90-е годы, рассказывает о сенсационных и малоизвестных сторонах жизни Минобороны, о некоторых тайнах Генштаба —‘Белого дома на Арбате” — и его обитателях.Автор анализирует скрытые стороны сложных отношений Верховного главнокомандующего с высшим генералитетом, а также представляет галерею портретов многих известных военачальников.


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

Главный герой - не герой в полном смысле этого слова, не десантник и не спецназовец, не инженер и не врач-хирург, обычный таксист и бывший представитель офисного планктона. Мир рухнул под ядерными ударами. А тут вдруг открылась возможность уйти в более чистый мир прошлого, но не менее агрессивного, чем родной - в мир 1941 года. Главный герой всегда считал, что геройство начинается там, где не нашлось место трезвому расчету. Вот и решил запланировать скрытое переселение и закрепление беженцев в 1941 году.


Грешники в руках разгневанного Бога

Во время второй волны того пробуждения, в 1740-41 годах, Джонатан Эдвардс посетил город Энфилд и проповедовал то, что было названо самой известной проповедью, сказанной из Библии. Она называлась «Грешники в руках разгневанного Бога», основываясь на тексте Второзакония 32:35. Вот свидетельство того дня: «В то время как люди в соседних городах испытывали великие душевные страдания за свои души, местные жители этого городка чувствовали себя безопасно, свободно и непринуждённо. Лекция была назначена в Энфилде; а люди из соседних мест были настолько впечатлены беззаботностью местных, и исполненные страха, что Бог, в Своём праведном суде, прошел мимо них, в то время как божественный дождь падал вокруг них, простирали перед Ним, моля о милости за их души.


Счастье потерянной жизни. Т. 3: Просто ученики

Автобиографический роман Николая Храпова — бесспорно, ярчайшая страница истории евангельского движения в бывшем Советском Союзе. Жизнь автора уникальна, поскольку фактически лишь за написание этой книги 66-летнего старика приговорили к трем годам тюремного заключения. Незадолго до окончания последнего пятого по счету срока, он «освобождается», уже навсегда. Ничто не сломило этого героя веры в его уповании на Бога: ни трудности жизни, ни прелесть соблазнов, ни угрозы со стороны КГБ. Он был и остался победителем".


Россия и Дон. История донского казачества 1549—1917

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


Император Алексей Ι Комнин и его стратегия

Монография доктора исторических наук Андрея Юрьевича Митрофанова рассматривает военно-политическую обстановку, сложившуюся вокруг византийской империи накануне захвата власти Алексеем Комнином в 1081 году, и исследует основные военные кампании этого императора, тактику и вооружение его армии. выводы относительно характера военно-политической стратегии Алексея Комнина автор делает, опираясь на известный памятник византийской исторической литературы – «Алексиаду» Анны Комниной, а также «Анналы» Иоанна Зонары, «Стратегикон» Катакалона Кекавмена, латинские и сельджукские исторические сочинения. В работе приводятся новые доказательства монгольского происхождения династии великих Сельджукидов и новые аргументы в пользу радикального изменения тактики варяжской гвардии в эпоху Алексея Комнина, рассматриваются процессы вестернизации византийской армии накануне Первого Крестового похода.


Продолжим наши игры+Кандибобер

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


Краткая история насекомых. Шестиногие хозяева планеты

«Любая история, в том числе история развития жизни на Земле, – это замысловатое переплетение причин и следствий. Убери что-то одно, и все остальное изменится до неузнаваемости» – с этих слов и знаменитого примера с бабочкой из рассказа Рэя Брэдбери палеоэнтомолог Александр Храмов начинает свой удивительный рассказ о шестиногих хозяевах планеты. Мы отмахиваемся от мух и комаров, сражаемся с тараканами, обходим стороной муравейники, что уж говорить о вшах! Только не будь вшей, человек остался бы волосатым, как шимпанзе.


Историческое образование, наука и историки сибирской периферии в годы сталинизма

Настоящая монография посвящена изучению системы исторического образования и исторической науки в рамках сибирского научно-образовательного комплекса второй половины 1920-х – первой половины 1950-х гг. Период сталинизма в истории нашей страны характеризуется определенной дихотомией. С одной стороны, это время диктатуры коммунистической партии во всех сферах жизни советского общества, политических репрессий и идеологических кампаний. С другой стороны, именно в эти годы были заложены базовые институциональные основы развития исторического образования, исторической науки, принципов взаимоотношения исторического сообщества с государством, которые определили это развитие на десятилетия вперед, в том числе сохранившись во многих чертах и до сегодняшнего времени.


Технологии против Человека. Как мы будем жить, любить и думать в следующие 50 лет?

Эксперты пророчат, что следующие 50 лет будут определяться взаимоотношениями людей и технологий. Грядущие изобретения, несомненно, изменят нашу жизнь, вопрос состоит в том, до какой степени? Чего мы ждем от новых технологий и что хотим получить с их помощью? Как они изменят сферу медиа, экономику, здравоохранение, образование и нашу повседневную жизнь в целом? Ричард Уотсон призывает задуматься о современном обществе и представить, какой мир мы хотим создать в будущем. Он доступно и интересно исследует возможное влияние технологий на все сферы нашей жизни.