Главная / Программирование / Введение в программирование на Intel Cilk Plus

Введение в программирование на Intel Cilk Plus - ответы на тесты Интуит

Правильные ответы выделены зелёным цветом.
Все ответы: Этот курс представляет собой краткое введение в основы программирования на Intel® CilkTM Plus.
Что такое Intel® Cilk™ Plus?
(1) расширение C/C++ для разработки параллельных приложений
(2) расширение C/C++ для разработки приложений для графических процессоров
(3) программный инструмент динамического анализа приложений
(4) программный инструмент анализа безопасности приложений
(5) программный инструмент отладки параллельных MPI-приложений
Какую модель параллелизма поддерживает Intel® Cilk™ Plus?
(1) параллелизм потоков
(2) параллелизм задач
(3) параллелизм заданий
Поддерживает ли Intel® Cilk™ Plus языки Java?
(1) да
(2) нет
Верно ли, что OpenMP и Intel® Cilk™ Plus используют одну модель параллелизма?
(1) да
(2) нет
Действительно ли RISC-архитектура основана на параллелизме?
(1) да
(2) нет
В каком случае зависимость ускорения от числа потоков близка к линейной?
(1) когда степень параллелизма вычислительной системы достаточно велика
(2) когда степень параллелизма вычислительной системы недостаточно велика
(3) когда в программе не используются операторы cilk_sync
Что такое архитектура MIC?
(1) Many Integrated Core architecture
(2) Message Intermittance Computing architecture
(3) Medium Intel Computing architecture
Какой модификацией исходного кода можно сериализовать выполнение Cilk-программы?
(1) заменой заголовочного файла с cilk.h на cilk_stub.h
(2) заменой всех операторов cilk_spawn на cilk_stub
Что такое OpenMP?
(1) стандарт программного интерфейса приложений для параллельных систем с общей памятью
(2) стандарт реализации параллельных приложений с использованием обмена сообщениями интегральная среда быстрой разработки параллельных приложений
(3) стандарт POSIX реализации потоков (нитей) выполнения, определяющий API для создания и управления ими
Как в среде Microsoft Visual Studio можно сериализовать выполнение Cilk-программы?
(1) с помощью замены Properties C/C++ Language [Intel C++] Replace Intel Cilk Plus
(2) Keywords значением Serial Equivalent
(3) это действие невозможно
Низкоуровневыми инструментами многопоточного программирования являются:
(1) OpenMP
(2) OpenCL
(3) Intel® Cilk™ Plus
(4) POSIX Threads
(5) Windows API
Что является общим у разных потоков одного процесса?
(1) стек
(2) сегмент кода
(3) сегмент данных
Какой идентификатор имеет мастер-поток в OpenMP-программе?
(1) 0
(2) 1
(3) 2
(4) 100
Средства борьбы с гонками за данными:
(1) использование преимущественно локальных по отношению к потоку, а не разделяемых переменных
(2) управление доступом к разделяемым переменным с помощью различных средств синхронизации
Какой формат директив OpenMP является правильным?
(1) #pragma omp директива [оператор_1[, оператор_2, :]]
(2) #pragma директива [оператор_1[, оператор_2, :]]
(3) #omp директива [оператор_1[, оператор_2, :]]
(4) #pragma omp директива
Поддерживает ли Intel® Cilk™ Plus компилятор icl?
(1) да (все версии)
(2) нет
(3) да (начиная с версии 12.0)
В каком случае программа на Cilk будет выполняться в последовательном режиме?
(1) если нет свободных рабочих потоков
(2) Cilk-программа может выполняться только параллельно
С какой средой разработки совместим Intel® Cilk™ Plus в операционной системе Microsoft Windows?
(1) Microsoft Visual Studio
(2) Delphi
Может ли программист, использующий Intel® Cilk™ Plus явно указать способ распределения работы между потоками?
(1) да
(2) нет
Intel® Cilk™ Plus поддерживает векторный параллелизм и параллелизм задач.
(1) да
(2) нет
Intel® Cilk™ Plus ориентирован на системы с общей памятью. Правильно ли это утверждение?
(1) да
(2) нет
Имеется следующий фрагмент кода: cilk_init(); cilk_spawn f() … cilk_sync

В чём состоит ошибка программиста?

(1) в использовании несуществующей конструкции cilk_init
(2) в неправильной последовательности ключевых слов
(3) в данном контексте нельзя использовать cilk_spawn
Для чего предназначена функция __cilkrts_set_param()?
(1) для задания параметров исполнения Cilk-программы
(2) для задания параметров гиперобъекта
(3) для задания параметров исполнения заданного потока
Может ли гонка за данными не влиять на результат работы программы?
(1) да
(2) нет
Каким должен быть размер (в смысле вычислительной сложности) порождённых задач для достижения наибольшей эффективности Cilk-программ?
(1) достаточно большим
(2) достаточно маленьким
Поддерживает ли Intel® Cilk™ Plus языки C/C++?
(1) да
(2) нет
Какие технологии многопоточного параллелизма являются альтернативой Intel® Cilk™ Plus ?
(1) OpenMP
(2) альтернатив нет
(3) OpenCL
(4) MPI
(5) OpenMPI
Поддерживает ли MPI многопоточный параллелизм?
(1) да, в спецификации 2.x
(2) да, во, всех спецификациях
(3) нет
Какой метод диспетчеризации задач используется в Intel® Cilk™ Plus?
(1) метод захвата задач
(2) статическое распределение задач по ядрам процессора
(3) динамическое распределение задач по ядрам процессора
(4) динамическое "управляемое" распределение задач по ядрам процессора
Является ли VLIW-архитектура методом распараллеливания вычислений?
(1) да
(2) нет
Какое свойство Cilk-программы позволяет оптимизировать диспетчеризация методом захвата работы?
(1) динамическую балансировку
(2) объём занимаемой памяти
(3) кэш-эффективности
К IPC относятся:
(1) именованные каналы
(2) обмен с помощью сообщений
(3) семафоры
(4) сокеты
(5) обмен через общую память
(6) OpenMP
(7) MPI
Как с помощью компилятора (Linux) можно сериализовать выполнение Cilk-программы?
(1) с помощью ключа -cilk-serialize
(2) с помощью ключа --serialize
(3) это действие невозможно
Что такое Intel® TBB?
(1) библиотека шаблонов параллельных алгоритмов и контейнеров на языке С++
(2) стандарт реализации параллельных приложений с использованием обмена сообщениями интегральная среда быстрой разработки параллельных приложений
(3) стандартная библиотека математических вычислений
(4) стандарт разработки параллельных алгоритмов
Можно ли с помощью Intel® Cilk™ Plus разрабатывать приложения для гибридных вычислительных систем?
(1) да
(2) нет
OpenMP-программа состоит из:
(1) параллельных и последовательных секций
(2) вызовов функций обмена сообщениями
Какой параллелизм реализуется при выполнении параллельной программы на последовательной вычислительной системе?
(1) видимый (мнимый)
(2) реальный
(3) параллельная программа не может выполняться на последовательной вычислительной системе
Какие технологии поддерживают пошаговое распараллеливание?
(1) OpenMP
(2) Intel® Cilk™ Plus
(3) MPI
Условия возникновения тупика в многопоточных программах:
(1) доступ к ресурсу эксклюзивен
(2) поток может удерживать ресурс, запрашивая другой
(3) ни один из конкурирующих потоков не может освободить запрашиваемый ресурс
Какой заголовочный файл используется в OpenMP-программах?
(1) omp.h
(2) parallel.h
(3) threads.h
Какая архитектура является целевой для Cilk-программ?
(1) вычислительные системы с общей памятью
(2) вычислительные системы с распределённой памятью
(3) гибридные системы
Всегда ли программа на Cilk выполняется в параллельном режиме?
(1) нет, только если есть свободные рабочие потоки
(2) всегда
(3) никогда
Позволяет ли Intel® Trace Collector собирать статистику выполнения Cilk-программы?
(1) да
(2) нет
Поддерживает ли компилятор GCC версии 4.2 Intel® Cilk™ Plus?
(1) да
(2) нет
Могут ли разные процессы иметь общее адресное пространство?
(1) да
(2) нет
Intel® Cilk™ Plus можно применять совместно с MPI. Правильно ли это утверждение?
(1) да
(2) нет
Для чего предназначена функция __cilkrts_get_worker_number()?
(1) для определения идентификатора исполнителя
(2) для определения количества исполнителей
Для чего предназначена функция __cilkrts_get_total_workers()?
(1) для определения суммарного числа слотов ID, в том числе и тех, которые являются неактивными
(2) для определения суммарного числа активных слотов ID
Как влияют блокировки на степень параллелизма программы?
(1) уменьшают
(2) увеличивают
Почему небольшой (в смысле вычислительной сложности) размер порождённых задач снижает эффективность Cilk-программы?
(1) увеличивается доля накладных расходов на создание порождённых задач
(2) в этом случае плохо работает алгоритм диспетчеризации
Поддерживает ли Intel® Cilk™ Plus языки Fortran?
(1) да
(2) нет
MPI и Intel® Cilk™ Plus используют одну модель параллелизма. Правильно ли это утверждение?
(1) да
(2) нет
Увеличение производительности вычислений позволяет:
(1) решать новые, более сложные задачи
(2) решать старые задачи, но быстрее
(3) решать старые задачи, но с более высокой точностью
Что происходит, если очередь порождённых задач на каком-либо процессоре (ядре) оказывается пустой?
(1) происходит захват задачи из очереди другого процессора (ядра)
(2) происходит аварийное завершение работы
Действительно ли суперскалярная архитектура основана на параллелизме?
(1) да
(2) нет
Сохраняет ли Cilk последовательную семантику программ?
(1) да
(2) нет
Что такое POSIX Threads?
(1) стандарт POSIX реализации потоков (нитей) выполнения, определяющий API для создания и управления ими
(2) стандарт реализации параллельных приложений с использованием обмена сообщениями интегральная среда быстрой разработки параллельных приложений
Как с помощью компилятора (Windows) можно сериализовать выполнение Cilk-программы?
(1) с помощью ключа /Qcilk-serialize
(2) с помощью ключа /Qserialize
(3) это действие невозможно
Высокоуровневыми инструментами многопоточного программирования являются:
(1) OpenMP
(2) OpenCL
(3) Intel® Cilk™ Plus
(4) POSIX Threads
(5) Windows API
Какая технология позволяет реализовать "пульсирующий параллелизм"?
(1) OpenMP
(2) MPI
(3) PVM
Какое действие выполняет операция join?
(1) объединение потоков
(2) завершение выполнения параллельной программы
(3) порождение потоков
При разработке многопоточных приложений возникают следующие проблемы:
(1) гонки за данными
(2) блокировки
(3) несбалансированность загрузки
(4) только "обычные" проблемы последовательного программирования
Из каких компонентов состоит OpenMP?
(1) директивы компилятору
(2) подпрограммы
(3) переменные окружения
(4) утилит мониторинга OpenMP-программ
Выполнение какого условия обеспечивает оптимальную эффективность многопоточной программы?
(1) число программных потоков равно числу аппаратных потоков
(2) число программных потоков должно быть меньше числа аппаратных потоков
(3) число программных потоков должно быть больше числа аппаратных потоков
Intel® Cilk™ Plus ориентирован на системы с распределённой памятью. Правильно ли это утверждение?
(1) да
(2) нет
С какой средой разработки совместим Intel® Cilk™ Plus в операционной системе MacOS?
(1) такой среды нет, Intel® Cilk™ Plus несовместим с MacOS
(2) Lion Mac
(3) Eclipse
Является ли архитектура Many-Integrated-Core целевой для Intel® Cilk™ Plus?
(1) да
(2) нет
Как решается проблема сбалансированной загрузки ядер в Intel® Cilk™ Plus?
(1) системой исполнения, использующей метод захвата работы
(2) компиляцией с соответствующими ключами
Могут ли разные потоки иметь общее адресное пространство?
(1) да
(2) нет
Intel® Cilk™ Plus можно использовать для программирования вычислений на графических процессорах. Правильно ли это утверждение?
(1) да
(2) нет
Для чего предназначена функция __cilkrts_get_nworkers()?
(1) для определения идентификатора исполнителя
(2) для определения количества исполнителей
Можно ли избавиться от гонки за данными изменением алгоритма вычислений?
(1) да
(2) нет