Онлайн тесты на тему "Методы параллельной обработки данных | Итоговый тест | МФПУ «Синергия», МТИ, МОИ, МОСАП [ID 67530]"
0
Эта работа представлена в следующих категориях:
В тесте представлено 80 вопросов. Правильные ответы размещены после списка вопросов. Сдавался в 2026 г. Формат файла – pdf.
Демо работы
Описание работы
1. Алгоритм сортировки слиянием (Merge Sort) хорошо подходит для распараллеливания с использованием какого метода?Разделение данных
Конвейеризация
Разделение задач
Рекурсивное распараллеливание
2. Алгоритм умножения матриц часто распараллеливают с использованием какого метода?
Разделение задач
Конвейеризация
Разделение данных
Рекурсивное распараллеливание
3. В каких устройствах чаще всего используются SoC?
Суперкомпьютеры
Серверы
Мобильные телефоны
Рабочие станции
4. В какой модели параллельного программирования одна и та же операция применяется одновременно к разным элементам данных?
Параллелизм задач
Разделяемая память
Параллелизм данных
Модель акторов
5. В какой модели параллельного программирования потоки взаимодействуют через общую область памяти?
Распределенная память
Разделяемая память
Параллелизм данных
Модель акторов
6. В какой модели параллельного программирования программа разбивается на независимые подзадачи, которые выполняются параллельно?
Параллелизм данных
Разделяемая память
Параллелизм задач
Модель акторов
7. В какой модели параллельного программирования программа строится из чистых функций, не имеющих побочных эффектов?
Модель акторов
Параллелизм задач
Функциональный параллелизм
Разделяемая память
8. В какой модели параллельного программирования процессы взаимодействуют путем обмена сообщениями?
Разделяемая память
Параллелизм задач
Распределенная память
Параллелизм данных
9. В какой модели параллельного программирования система состоит из множества независимых “акторов”, взаимодействующих путем отправки и получения асинхронных сообщений?
Параллелизм задач
Распределенная память
Разделяемая память
Модель акторов
10. В какой модели параллельного программирования управление задачами обычно осуществляется менеджером задач?
Разделяемая память
Параллелизм данных
Параллелизм задач
Модель акторов
11. Как рассчитывается ускорение (Speedup) параллельной программы?
T(parallel) / T(sequential)
T(sequential) + T(parallel)
T(sequential) / T(parallel)
T(parallel) - T(sequential)
12. Как рассчитывается эффективность (Efficiency) параллельной программы? (где N - количество процессоро)
Speedup + N
Speedup N
Speedup - N
Speedup / N
13. Какая архитектура интегрирует несколько процессорных ядер и другие компоненты на одном чипе?
Кластер
ПНС
SoC
Графический процессор
14. Какая архитектура лучше всего подходит для задач, требующих выполнения одной и той же операции над большим объемом данных?
СИУР
СИМД
MISD
MIMD
15. Какая архитектура наиболее энергоэффективна?
ПНС
Кластер
SoC
СМП
16. Какая архитектура состоит из группы независимых компьютеров, соединенных сетью?
СМП
ПНС
Кластер
SoC
17. Какая архитектура характеризуется общей памятью, используемой всеми процессорами?
Кластер
ПНС
СМП
Графический процессор
18. Какая архитектура характеризуется очень большим количеством процессоров и специализированной сетью для высокоскоростной связи?
СМП
Графический процессор
Кластер
ПНС
19. Какая архитектура характеризуется распределенной памятью?
СМП
Графический процессор
SoC
Кластер
20. Какая классификация параллельных архитектур основана на количестве потоков команд и потоков данных?
Классификация по тактовой частоте
Классификация по Флинну
Классификация по энергопотреблению
Классификация по стоимости
21. Какая модель предоставления вычислительных ресурсов осуществляется по требованию через интернет?
Виртуализация
Облачные вычисления
Параллельное программирование
Кластеризация
22. Какая модель программирования наиболее подходит для гетерогенных вычислительных систем (например, CPU + GPU)?
Разделяемая память
Распределенная память
Параллелизм данных (с использованием OpenCL)
Параллелизм задач
23. Какая проблема может возникнуть при использовании модели с разделяемой памятью, когда несколько потоков одновременно пытаются записать в одну и ту же область памяти?
Взаимоблокировка (deadlock)
Гонка данных (data race)
Переполнение стека
Утечка памяти
24. Какая топология сети обычно используется в MPP-системах?
Звезда
Кольцо
Гиперкуб
Шина
25. Какова цель минимизации коммуникаций в параллельных программах?
Увеличение объема передаваемых данных
Уменьшение задержек, связанных с передачей данных
Увеличение энергопотребления
Увеличение количества ошибок
26. Какой закон утверждает, что с увеличением количества процессоров можно решать задачи большего размера за то же время?
Закон Амдала
Закон Мура
Закон Густавсона
Закон Парето
27. Какой из перечисленных вариантов НЕ является преимуществом модели акторов?
Простота разработки масштабируемых систем
Естественная поддержка параллелизма
Устойчивость к гонкам данных
Простота отладки
28. Какой из перечисленных вариантов НЕ является преимуществом модели распределенной памяти?
Высокая масштабируемость
Простота программирования
Отсутствие проблем с когерентностью кэша
Возможность работы на кластерах
29. Какой из перечисленных инструментов используется для профилирования CUDA-приложений на GPU NVIDIA?
gprof
Intel VTune
Amplifier
NVIDIA Nsight
perf
30. Какой из перечисленных методов НЕ относится к методам минимизации коммуникаций?
Использование локальных копий данных
Передача только необходимых данных
Объединение небольших сообщений в одно большое
Использование глобальных переменных
31. Какой из перечисленных факторов НЕ следует учитывать при выборе модели параллельного программирования?
Тип задачи
Архитектура системы
Наличие доступных инструментов и библиотек
Цвет корпуса компьютера
32. Какой инструмент используется для поиска и устранения ошибок в параллельных программах, позволяя выполнять программу по шагам и просматривать значения переменных?
Профилировщи
Отладчик
Компилятор
Анализатор кода
33. Какой метод анализа зависимостей определяет, какие операции должны выполняться последовательно, а какие могут выполняться параллельно?
Анализ сложности алгоритма
Анализ памяти
Анализ зависимостей
Анализ кода
34. Какой метод оптимизации коммуникаций предполагает передачу только необходимых данных, избегая передачи избыточной информации?
Использование RDMA
Использование локальных копий данных
Уменьшение объема передаваемых данных
Объединение нескольких небольших сообщений в одно большое
35. Какой метод оптимизации памяти предполагает организацию данных в памяти таким образом, чтобы близлежащие данные использовались вместе?
Локальность данных
Выравнивание данных
Использование пулов памяти
Избежание ложного разделения
36. Какой метод оптимизации памяти предполагает предотвращение частого выделения и освобождения памяти, что может быть дорогостоящим?
Локальность данных
Выравнивание данных
Использование пулов памяти
Избежание ложного разделения
37. Какой метод оптимизации памяти предполагает размещение данных в памяти по границам, кратным размеру данных, для повышения скорости доступа?
Локальность данных
Выравнивание данных
Использование пулов памяти
Избежание ложного разделения
38. Какой метод распараллеливания заключается в разбиении алгоритма на независимые задачи, которые могут выполняться параллельно?
Разделение данных
Конвейеризация
Разделение задач
Рекурсивное распараллеливание
39. Какой метод распараллеливания заключается в разделении алгоритма на последовательные этапы, через которые данные проходят как по конвейеру?
Разделение данных
Конвейеризация
Разделение задач
Рекурсивное распараллеливание
40. Какой метод распараллеливания заключается в разделении данных между процессорами/потоками?
Разделение задач
Конвейеризация
Рекурсивное распараллеливание
Разделение данных
41. Какой метод распараллеливания подходит для алгоритмов, основанных на рекурсии?
Разделение данных
Конвейеризация
Разделение задач
Рекурсивное распараллеливание
42. Какой механизм используется для синхронизации потоков в модели с разделяемой памятью, чтобы избежать гонок данных?
Обмен сообщениями
Мьютексы и семафоры
Разделение данных
Функциональное программирование
43. Какой протокол чаще всего используется для обмена данными между узлами кластера?
TCP/IP
HTTP
ИМП
CUDA
44. Какой процесс используется для измерения производительности различных частей программы с целью выявления узких мест?
Отладка
Профилирование
Компиляция
Анализ кода
45. Какой тип балансировки нагрузки предполагает распределение работы до начала вычислений?
Динамическая балансировка нагрузки
Адаптивная балансировка нагрузки
Статическая балансировка нагрузки
Реактивная балансировка нагрузки
46. Какой тип балансировки нагрузки предполагает распределение работы между процессорами/потоками во время вычислений?
Статическая балансировка нагрузки
Динамическая балансировка нагрузки
Реактивная балансировка нагрузки
Проактивная балансировка нагрузки
47. Какой тип балансировки нагрузки предполагает распределение работы между процессорами/потоками до начала вычислений?
Динамическая балансировка нагрузки
Адаптивная балансировка нагрузки
Статическая балансировка нагрузки
Реактивная балансировка нагрузки
48. Какой тип зависимости возникает, когда результат одной операции используется в качестве входных данных для другой операции?
Зависимость по управлению
Зависимость по данным
Зависимость по ресурсам
Зависимость по времени
49. Какой фактор НЕ следует учитывать при выборе метода распараллеливания?
Тип задачи
Структура данных
Личные предпочтения программиста
50. Какой язык программирования обычно используется для программирования GPU?
Java
Python
КУДА
С#
51. Какой язык программирования поддерживает функциональный параллелизм?
Java
C++
Python
Haskell
52. Какой язык программирования часто используется для реализации модели акторов?
C++
Java
Erlang
Python
53. Что из перечисленного НЕ является методом оптимизации производительности параллельной программы?
Оптимизация коммуникаций
Профилирование кода
Балансировка нагрузки
Использование случайных чисел
54. Что необходимо учитывать при использовании конвейеризации?
Минимальную задержку
Балансировку этапов
Тип файловой системы
Цвет корпуса компьютера
55. Что необходимо учитывать при разделении данных, чтобы обеспечить эффективное распараллеливание?
Тип операционной системы
Размер кэш-памяти
Балансировку нагрузки
Наличие графического интерфейса
56. Что ограничивает максимальное ускорение параллельной программы согласно закону Амдала?
Объем доступной памяти
Количество процессоров
Доля последовательного кода в программе
Тип используемого языка программирования
57. Что означает “сильная масштабируемость” (strong scalability)?
Время решения задачи уменьшается с увеличением количества процессоров при фиксированном размере задачи
Размер задачи увеличивается пропорционально количеству процессоров при постоянном времени выполнения
Программа может работать на разных операционных системах
Программа использует минимум ресурсов
58. Что означает “слабая масштабируемость” (weak scalability)?
Время решения задачи уменьшается с увеличением количества процессоров при фиксированном размере задачи
Размер задачи увеличивается пропорционально количеству процессоров при постоянном времени выполнения
Программа использует минимум ресурсов
Программа может работать на разных операционных системах
59. Что означает аббревиатура GPU?
Общий технологический блок
Графический процессор
Глобальная единица обработки
Гигабитный процессор
60. Что означает аббревиатура SISD в классификации Флинна?
Единая инструкция, единые данные
Одна команда, несколько данных
Несколько команд, одни данные
Множественная команда, множественная передача данных
61. Что означает термин GPGPU?
Графический процессор общего назначения
Вычисления общего назначения на графических процессорах
Обработка графики на единицах общего назначения
Глобальная обработка на графических процессорах
62. Что показывает метрика масштабируемости (Scalability) параллельной программы?
Время выполнения программы
Объем памяти, используемый программой
Способность программы увеличивать производительность при увеличении количества процессоров
Сложность кода программы
63. Что такое “гонка данных” (data race)?
Ситуация, когда несколько потоков одновременно обращаются к общей памяти без должной синхронизации
Ситуация, когда программа работает слишком быстро
Ошибка в алгоритме сортировки
Переполнение стека
64. Что такое “критический путь” в параллельном алгоритме?
Путь наименьшего сопротивления
Последовательность операций, определяющая минимальное время выполнения
Путь с максимальным количеством коммуникаций
Путь с наименьшим количеством операций
65. Что такое “ложное разделение” (false sharing)?
Ситуация, когда два потока одновременно пытаются изменить одну и ту же переменную
Ситуация, когда несколько процессоров обращаются к разным данным, расположенным в одной и той же строке кэша
Ошибка в алгоритме выделения памяти
Недостаток оперативной памяти
66. Что такое “ускорение” (speedup) в контексте параллельных вычислений?
Отношение времени выполнения последовательного алгоритма к времени выполнения параллельного алгоритма
Время выполнения параллельного алгоритма
Объем памяти, используемый параллельным алгоритмом
Количество процессоров, используемых параллельным алгоритмом
67. Что такое “эффективность” (efficiency) в контексте параллельных вычислений?
Отношение ускорения к количеству процессоров
Время выполнения параллельного алгоритма
Объем памяти, используемый параллельным алгоритмом
Количество коммуникаций в параллельном алгоритме
68. Что такое CUDA?
Язык программирования для разработки веб-приложений
Платформа параллельных вычислений от NVIDIA для GPU
Инструмент для управления базами данных
Операционная система для серверов
69. Что такое MPI?
Язык программирования для GPU
API для обмена сообщениями между процессами
Фреймворк для разработки веб-приложений Инструмент для профилирования кода
70. Что такое RDMA (Remote Direct Memory Access)?
Метод удаленной отладки
Метод удаленного управления процессором
Метод прямого доступа к памяти другого компьютера без участия операционной системы
Метод шифрования данных
71. Что такое балансировка нагрузки (load balancing)?
Распределение работы между процессорами/потоками таким образом, чтобы все они были заняты примерно одинаковое время
Оптимизация использования оперативной памяти
Снижение энергопотребления
Увеличение скорости передачи данных по сети
72. Что такое взаимоблокировка (deadlock)?
Ситуация, когда один поток блокирует доступ к общей памяти
Ситуация, когда несколько потоков заблокированы, ожидая друг друга
Ошибка в алгоритме сортировки
Переполнение буфера
73. Что такое зернистость (granularity) в контексте параллельных вычислений?
Размер шрифта в коде
Отношение объема вычислений к объему коммуникаций
Размер кэш-памяти
Тип операционной системы
74. Что такое когерентность кэша?
Согласованность данных в кэш-памяти разных процессоров
Скорость доступа к кэш-памяти
Размер кэш-памяти
Тип используемой кэш-памяти
75. Что такое масштабируемость?
Возможность системы работать с большими объемами данных
Возможность системы увеличивать вычислительную мощность путем добавления ресурсов
Возможность системы работать в различных операционных системах
Возможность системы снижать энергопотребление
76. Что такое модель параллельного программирования?
Способ описания аппаратной архитектуры компьютера
Абстракция, предоставляющая способ представления параллельности в программе
Метод оптимизации компилятора
Способ управления памятью в операционной системе
77. Что такое распараллеливание алгоритма?
Процесс написания кода на нескольких языках программирования
Процесс преобразования последовательного алгоритма в параллельный
Процесс компиляции кода для разных операционных систем
Процесс отладки кода на нескольких компьютерах
78. Что такое чистая функция?
Функция, которая не возвращает значение
Функция, которая не принимает аргументы
Функция, которая не имеет побочных эффектов и возвращает один и тот же результат для одних и тех же входных данных
Функция, которая выполняется только один раз
79. Что является ограничением на ускорение, которое можно достичь за счет параллелизации, согласно закону Амдала?
Количество процессоров
Объем памяти
Последовательная часть программы
Скорость сети
80. Что является основным преимуществом использования облачных вычислений для параллельной обработки данных?
Более низкая задержка
Отсутствие зависимости от интернет-соединения
Масштабируемость и гибкость
Более высокий уровень безопасности