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

Здесь есть возможность читать онлайн «Валентин Арьков - Организация параллельных потоков. Часть 2» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Год выпуска: 2020, Жанр: Прочая околокомпьтерная литература, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

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

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Организация параллельных потоков. Часть 2»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

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

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

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Организация параллельных потоков. Часть 2», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Мы научились вводить число из командной строки. Теперь мы сможем управлять поведением программы, не изменяя исходный текст.

Возьмём нашу «большую задачу» параллельного суммирования из раздела 4 и немного её усложним (рис. 5.13).

Зададим число итераций цикла из командной строки (строка 11).

А программа пусть выводит на экран время расчётов (строка 25).

Рис. 5.13. Управление циклом из командной строки

Запускаем программу в командной строке и подбираем число итераций в цикле. Нам нужно получить приемлемое время выполнения программы — около 20 секунд. Затем запускаем программу несколько раз (рис. 5.14).

Тем временем следим за загрузкой ядер процессора. Должно быть 100%

Рис. 5.14. Четыре запуска

Задание.Составьте программу (рис. 5.13) и подберите приемлемое число итераций. Запустите программу несколько раз и обратите внимание на длительность решения задачи.

5.5. Анализ эффективности

У нас практически всё готово для анализа эффективности распараллеливания.

Напомним две основных характеристики распараллеливания:

speedup — ускорение;

efficiency — эффективность.

Формулы для вычисления этих показателей приводятся на рис. 5.15.

Рис. 5.15. Характеристики распараллеливания

Обозначения в формулах:

Т1 — время выполнения последовательной программы (на одном процессоре);

р — количество виртуальных процессоров, работающих параллельно при выполнении программы;

Тр — время выполнения параллельной программы на р процессорах;

Sp — ускорение вычислений на р процессорах;

Ep — эффективность параллельных вычислений на р процессорах.

Показатель ускорения говорит о том, во сколько раз быстрее работает параллельная программа. Можно сказать, что ускорение измеряется «в разах».

Ускорение вычислений не надо путать с ускорением в физике. В разделе «Механика» ускорение измеряется в квадратных метрах в секунду и отражает скорость изменения скорости движения.

Показатель эффективности говорит о средней загрузке вычислительной мощности. Обычно измеряется в процентах. По сути, это эффективность использования (загрузки работой) доступных вычислительных элементов.

Задание. Изучите в английской версии Википедии статью «Speedup» и обратите внимание на определение терминов «ускорение» и «эффективность». Выясните, что такое «сверхлинейное ускорение» (Super-linear speedup) и за счёт чего оно достигается.

5.5.1. Пакетный файл

Создаём пакетный файл в каталоге Releaseтекущего проекта (рис. 5.16).

В первой строчке пакетного файла мы отключаем вывод на экран выполняемых команд.

Во второй строчке мы формируем строку заголовков полей (столбцов), разделяя их символом табуляции.

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

Рис. 5.16. Пакетный запуск

Запускаем пакетный файл и перенаправляем вывод в текстовый файл:

18> 18.txt.

Следим за загрузкой ядер (рис. 5.17). При каждом запуске загрузка поднимается до 100%. Это радует.

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

— один процессор (Sockets — 1);

— четыре ядра (Cores — 4);

— восемь логических (виртуальных) процессоров (Logical processors — 8).

Рис. 5.17. Загрузка процессора

Задание.Запустите пакетный файл (рис. 5.16) и направьте вывод результатов в текстовый файл.

Получаем текстовый файл.

Открываем его в Блокноте:

Notepad.

Убеждаемся, что здесь записаны колонки цифр (рис. 5.18).

Когда число оказывается длиннее, чем восемь знаков, получаем смещение на следующую позицию табуляции. Надеемся, это не помешает импорту данных в Excel.

Рис. 5.18. Результаты работы

Задание.Изучите содержимое полученного текстового фйала в Блокноте.

5.5.2. Сводная таблица

Загружаем текстовый файл в Excel. Указываем символ табуляции в качестве разделителя полей.

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

Text Import Wizard — Step 3 of 3 — Advanced — Decimal separator —.

После загрузки форматируем полученную таблицу.

Добавляем вычисление десятичного логарифма от числа итераций и времени выполнения — три дополнительных стобца (рис. 5.19).

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

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

Представляем Вашему вниманию похожие книги на «Организация параллельных потоков. Часть 2» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


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

Обсуждение, отзывы о книге «Организация параллельных потоков. Часть 2» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x