Ответы к контрольной работе: Intel Parallel Programming Professional (Introduction)

Новинка
-20%

Описание

Здесь представлена подборка ответов на тестовые вопросы по предмету "Intel Parallel Programming Professional (Introduction)". Перед покупкой проверяйте точно ли здесь представлены те вопросы, ответы на которые вам нужны.

Список вопросов

Вы написали программу с использованием OpenMP. При запуске на 4-ядерной системе оказалось, что загрузка процессора равна 25%. Какова наиболее вероятная причина?
Пусть написана следующая параллельная программа:int *a;#pragma omp parallel{…#pragma omp critical= new int [10];…}Какие проблемы могут наблюдаться при выполнении параллельной программы?
Функция omp_init_lock применяется для того что бы:
Функцию omp_get_max_threads используют для:
Пусть есть система с двумя вычислительными элементами. Известно, что доля последовательного кода составляет 40%. Какое максимальное ускорение можно получить с помощью технологии OpenMP?
Какие проблемы могут возникать при использовании симафоров OpenMP?
В критические секции:
В функциях приема сообщений MPI структура MPI_Status используется для:
Операция изменения переменной цикла index в директиве #pragma omp parallel for может иметь следующие формы:
Технология программирования OpenMP расширяет язык программирования за счет:
Структура MPI_Request используется для:
Что включает в себя контекст процесса?
Под коллективными операциями в MPI понимаются:
Пусть написана следующая параллельная программа:int sum = 0;#pragma omp parallel for(int i = 0; i < 100; i++) #pragma omp single sum++;Какие проблемы могут наблюдаться при выполнении параллельной программы?
В программе на OpenMP распараллелен следующий цикл#pragma omp for(i = 0; i < 1000; i++) for (j = 0; j < 1000; j++) с[i] += a[i][j] * b[j];Является ли данная параллельная реализация корректной?
Функцию omp_get_num_procs используют для:
Функция MPI_Recv:
Ваша OpenMP-программа содержит две параллельные области. Необходимо, чтобы число потоков в первой из них равнялось трем, а во второй определялось числом процессоров, доступных операционной системе. Отметьте верные варианты:
Пусть написана следующая параллельная программа:int *a;= new int [10];#pragma omp parallel{…[num_th] = num_th;…}Какие проблемы могут наблюдаться при выполнении параллельной программы, если num_th это номер потока (потоков меньше 10)?
Для чего в операциях "точка-точка" используется тег:
В программе на MPI требуется принять от процесса с рангом 0 на процессе с рангом 1 массив a из 10 элементов типа int. Отметьте верные варианты.
Производным типом данных в MPI называется:
Пусть написана следующая параллельная программа:int sum = 0;#pragma omp parallel for reduction (sum) for(int i = 0; i < 100; i++) sum++;Какие проблемы могут наблюдаться при выполнении параллельной программы?
Пусть есть система с двумя вычислительными элементами. Известно, что доля последовательного кода составляет 50%. Какое максимальное ускорение можно получить с помощью технологии OpenMP?
В OpenMP-программе необходимо задать число потоков равное двум. Отметьте верные варианты:
Для выполнения некоторого кода в параллельной области только нулевым потоком необходимо использовать
Директива #pragma omp sections используется для:
Какая директива OpenMP может быть использована для синхронизации потоков?
Режим передачи по готовности может быть использован только если:
Директива #pragma omp barrier используется для:
Пусть написана следующая параллельная программа:#pragma omp parallel{ int *a; #pragma omp sections { #pragma omp section { a = new int [10]; delete [] a; } #pragma omp section { a = new int [10]; delete [] a; } }}Какие проблемы могут наблюдаться при выполнении параллельной программы?
Для управления распределением итераций цикла между потоками в OpenMP используется параметр schedule директивы for. При типе расписания dynamic:
Пусть написана следующая параллельная программа:int sum = 0;#pragma omp parallel for for(int i = 0; i < 100; i++) sum++;Какие проблемы могут наблюдаться при выполнении параллельной программы?
Можно ли в OpenMP программе управлять количеством потоков выполняющих работу, не меняя кода программы?
Вы написали параллельную программу с использованием OpenMP на языке C. Распараллеливание осуществляется за счёт одной строчки: “#pragma omp parallel for”. Другие средства OpenMP не используются, переменные окружения не меняются. Вы запустили вашу программу 100 раз на 1-оядерной машине. 58 раз программа отработала корректно, 32 раза программа выдала не корректные данные, 10 раз программа не доработала до конца и завершила работу с ошибкой. Чем вы воспользуетесь в первую очередь при дальнейшей разработке программы?
Пусть написана следующая параллельная программа:int *a;#pragma omp parallel{ #pragma omp sections { #pragma omp section { a = new int [10]; delete [] a; } #pragma omp section { a = new int [10]; delete [] a; } }}Какие проблемы могут наблюдаться при выполнении параллельной программы?
Все данные для передачи в качестве сообщения MPI описываются с помощью триады:
В синхронном режиме передачи завершение функции отправки сообщения происходит:
Номер процесса в рамках MPI именуется:
Рассмотрим решение задачи взаимного исключения для двух потоков (i - номер потока). Какое из условий постановки задачи взаимного исключения может быть нарушено в предлагаемом решении?bool flag0 = false, flag1 = false;( true ){ while( flag1-i ) ; flagi = true; CSi(); flagi = false; NCSi();}
Для управления распределением итераций цикла между потоками в OpenMP используется параметр schedule директивы for. При типе расписания guided:
Для организации параллельных вычислений в вычислительных системах с распределенной памятью необходимо:
Обобщенная передача данных от всех процессов всем процессам может быть описана как:
Какое количество потоков может быть заведено в рамках параллельной секции?
В декартовой топологии множество процессов представляется в виде:
В программе на MPI необходимо распределить итерации цикла между процессами, считая, что время выполнения итераций примерно одинаковое
Какова цель балансировки нагрузки между потоками:
Сигнатурой производного типа в MPI именуется:
Прием сообщения при помощи функции MPI_Recv может быть инициирован:
Как определяется число процессов при запуске MPI-программы?
Для захвата симафора без блокировки потока используются функции:
Основное предназначение OpenMP?
Для сборки OpenMP-программы необходимо.
Имеется следующий код на OpenMPdouble a = 10.0;#pragma omp parallel private(a){ ...}Можно ли средствами OpenMP сделать так, чтобы локальные копии переменной а в каждом потоке имели то же значение, что и исходная переменная a?
В программе на OpenMP распараллелен следующий цикл#pragma omp parallel for for (i = 0; i < 1000; i++) for (j = 0; j < 1000; j++) с[i] += a[i][j] * b[j];Является ли данная параллельная реализация корректной?
Как называется состояние потока, обладающего всеми необходимыми для выполнения ресурсами за исключением ресурса "время ЦП"
Какой тип планирования преимущественно используется в интерактивных системах?
Рассмотрим задачу использования кольцевого буфера (задача "поставщик-потребитель"). Функции AddItemToBuffer и RemoveItemFromBuffer модифицируют структуру данных, разделяемую поставщиком и потребителем, и не используют синхронизацию. Предположим, что программа может выполняться как на однопроцессорных, так и на многопроцессорных системах, и одновременно могут выполняться несколько потоков-поставщиков и потоков-потребителей. Укажите, является ли решение корректным (всегда работает), или (2) некорректным (никогда не работает), или (3) опасным (в одних случаях работает, в других – нет). Semaphore Empty = N; // Буфер содержит N записейFull = 0;() { Empty.P(); DisableInterrupts(); AddItemToBuffer(); EnableInterrupts(); Full.V();}() { Full.P(); DisableInterrupts(); RemoveItemFromBuffer(); EnableInterrupts(); Empty.V();}
Выберите утверждения, верные для вытесняющих алгоритмов планирования.
Под ситуацией "заброшенные замки" понимается:
Рассмотрим задачу использования кольцевого буфера (задача "поставщик-потребитель"). Функции AddItemToBuffer и RemoveItemFromBuffer модифицируют структуру данных, разделяемую поставщиком и потребителем, и не используют синхронизацию. Предположим, что программа может выполняться как на однопроцессорных, так и на многопроцессорных системах, и одновременно могут выполняться несколько потоков-поставщиков и потоков-потребителей. Укажите, является ли решение корректным (всегда работает), или (2) некорректным (никогда не работает), или (3) опасным (в одних случаях работает, в других – нет). Semaphore Empty = N; // Буфер содержит N записейM = unlocked;Full = 0;() { Empty.P(); M.Lock(); AddItemToBuffer(); Full.V();}() { full.P(); M.Lock(); RemoveItemFromBuffer(); empty.V();}
В каких случаях обязательно возникают гонки (races) при использовании несколькими потоками одного объекта данных?
На значения каких критериев влияет размер кванта при использовании вытесняющих алгоритмов планирования?
Успешная отладка и оптимизация параллельных программ в системах с общей памятью требуют:
H-векторный и H-индексный способы создания данных отличаются от векторного и индексного способов тем, что:
Операция широковещательной рассылки данных это:
Завершение функции MPI_Send означает, что:
Среди предусмотренных в составе MPI операций передачи сообщений различают:
Под параллельной программой в рамках MPI понимается:
Располагается два цикла. Возможна ли ситуация при которой один из потоков завершил выполнять итерации первого цикла и начал выполнять итерации второго цикла, а другие потоки нет?
Пусть написана следующая параллельная программа:int *a;#pragma omp parallel{…= new int [10];…}Какие проблемы могут наблюдаться при выполнении параллельной программы?
Что определяет количество потоков в рамках параллельной секции?
В программе на OpenMP имеется вычислительный блок, содержащий два вложенных цикла с независимыми итерациями. Требуется распараллелить его с помощью OpenMP. Количество итераций внешнего цикла 1000, внутреннего – 1000000. Какой цикл выгоднее распараллелить: внешний или внутренний?
Рассмотрим задачу использования кольцевого буфера (задача "поставщик-потребитель"). Функции AddItemToBuffer и RemoveItemFromBuffer модифицируют структуру данных, разделяемую поставщиком и потребителем, и не используют синхронизацию. Предположим, что программа может выполняться как на однопроцессорных, так и на многопроцессорных системах, и одновременно могут выполняться несколько потоков-поставщиков и потоков-потребителей. Укажите, является ли решение корректным (всегда работает), или (2) некорректным (никогда не работает), или (3) опасным (в одних случаях работает, в других – нет). Semaphore Empty = N; // Буфер содержит N записейM = unlocked;Full = 0;() { M.Lock(); Empty.P(); AddItemToBuffer(); Full.V(); M.Unlock();}() { M.Lock(); full.P(); RemoveItemFromBuffer(); empty.V(); M.Unlock();}
Укажите положения, верные для решения задачи взаимного исключения, основанного на прерываниях.
Программный продукт Intel Parallel Inspector решает следующие задачи:
Укажите наиболее важный критерий оценки алгоритмов планирования в интерактивных системах.
Рассмотрим решение задачи взаимного исключения для двух потоков (i - номер потока). Какое из условий постановки задачи взаимного исключения может быть нарушено в предлагаемом решении?bool flag0 = false, flag1 = false;( true ){ flagi = true; while( flag1-i ) ; CSi(); flagi = false; NCSi();}
Отметьте верные утверждения об OpenMP:
В программе на MPI, содержащей ввод данных, рассылку данных, вычислительный блок, сбор результатов, необходимо замерить время вычислительного блока. Каким образом это сделать корректно?
Выберите наиболее правильное утверждение:
Отметьте ресурсы, которые потоки одного процесса используют совместно
Вам выдали работающую последовательную программу, написанную на языке C++. Программа компилируется час, а объём исходников составляет 1.5 MB. Перед вами стоит задача распараллеливания программы. Чем вы воспользуетесь в первую очередь?
Какие из директив позволяют выполнить действия только в одном потоке
Укажите положения, верные для алгоритма Петерсона решения задачи взаимного исключения.
Процесс оптимизации параллельных программ обычно устроен следующим образом:
На эффективность работы параллельной программы существенное влияние оказывают следующие факторы:
Протяженность производного типа в MPI это:
Рассмотрим задачу использования кольцевого буфера (задача "поставщик-потребитель"). Функции AddItemToBuffer и RemoveItemFromBuffer модифицируют структуру данных, разделяемую поставщиком и потребителем, и не используют синхронизацию. Предположим, что программа может выполняться как на однопроцессорных, так и на многопроцессорных системах, и одновременно могут выполняться несколько потоков-поставщиков и потоков-потребителей. Укажите, является ли решение корректным (всегда работает), или (2) некорректным (никогда не работает), или (3) опасным (в одних случаях работает, в других – нет). Semaphore Empty = N; // Буфер содержит N записейM = unlocked;Full = 0;() { Empty.P(); M.Lock(); AddItemToBuffer(); M.Unlock(); Full.V();}() { full.P(); M.Lock(); RemoveItemFromBuffer(); M.Unlock(); empty.V();}
Пусть написан следующий параллельный код:#pragma omp parallel for ordered{ for (i=5; i >= 0; i--) { #pragma omp ordered printf ("%d ",i);}В каком порядке выведутся числа?
Вы написали программу на языке C. Эта программа работает не корректно на части тестовых данных. Каким инструментом, входящим в комплект поставки Parallel Studio, вы воспользуетесь для поиска ошибки в вашей программе?
Вы написали программу на языке C. Эта программа работает корректно на подготовленных тестовых данных, но скорость работы вас не устраивает. Какими инструментами, входящими в комплект поставки Parallel Studio, вы воспользуетесь для увеличения скорости работы вашей программы?
Процесс обнаружения ошибки в параллельных программах обычно устроен следующим образом:
Коллективные операции должны быть вызваны:
Как называется состояние потока, обладающего всеми необходимыми ресурсами, в том числе возможностью использования ЦП
Вы написали параллельную программу с использованием OpenMP на языке C. Эта программа работает корректно на подготовленных тестовых данных. Вы запустили вашу программу два раза на 4-хядерной машине. Первый раз вы запустили программу в один поток, и она работала 39 секунд, второй – в 4 потока и она работала 34 секунды. Чем вы воспользуетесь в первую очередь при дальнейшей разработке программы?
Завершение вызова функции неблокирующего обмена приводит:
Пусть написана следующая параллельная программа:int *a;= new int [10];#pragma omp parallel shared(a){…[num_th] = num_th;…}Какие проблемы могут наблюдаться при выполнении параллельной программы, если num_th это номер потока (потоков меньше 10)?
В OpenMP-программе имеются две параллельные области. Возможна ли ситуация, когда один поток закончит выполнение обеих параллельных областей, в то время как другой поток все еще выполняет код первой параллельной области, при условии что все потоки запущены средствами OpenMP?
Необходимость создания инструментов для отладки и профилирования параллельных программ вызвана следующими причинами:

Характеристики ответов (шпаргалок) к КР

Семестр
Просмотров
0
Качество
Идеальное компьютерное
Количество вопросов
Картинка-подпись
Гарантия сдачи без лишних хлопот! ✅🎓 Ответы на тесты по любым дисциплинам, базы вопросов, работы и услуги для Синергии, МЭИ и других вузов – всё уже готово! 🚀 🎯📚 Гарантия качества – или возврат денег! 💰✅

Комментарии

Нет комментариев
Стань первым, кто что-нибудь напишет!
Поделитесь ссылкой:
Цена: 490 390 руб.
Расширенная гарантия +3 недели гарантии, +10% цены
Рейтинг автора
4,99 из 5
Поделитесь ссылкой:
Сопутствующие материалы

Подобрали для Вас услуги

Вы можете использовать полученные ответы для подготовки к экзамену в учебном заведении и других целях, не нарушающих законодательство РФ и устав Вашего учебного заведения.
Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
7073
Авторов
на СтудИзбе
257
Средний доход
с одного платного файла
Обучение Подробнее