Главная / Суперкомпьютерные технологии /
Технологии построения и использования кластерных систем / Тест 8
Технологии построения и использования кластерных систем - тест 8
Упражнение 1:
Номер 1
Основным инструментом поиска ошибок в программах является:
Ответ:
 (1) отладчик 
 (2) профилировщик 
 (3) компилятор 
Номер 2
Важным нововведением Microsoft Visual Studio 2008 является:
Ответ:
 (1) наличие встроенного отладчика 
 (2) возможность разработки параллельных MPI программ 
 (3) возможность отладки параллельных MPI программ 
Номер 3
Как задаются точки остановки в программе:
Ответ:
 (1) указанием строки кода, где необходимо прервать выполнение программы 
 (2) указанием условия на некоторую переменную 
 (3) вызовом функции breakpoint
 
Упражнение 2:
Номер 1
Окно "Call Stack" в Microsoft Visual Studio 2008:
Ответ:
 (1) показывает все функции, которые могут вызывать текущую функцию 
 (2) показывает стек вызова функций текущего потока 
 (3) показывает статистическую информацию о числе вызовов функций выбранного класса 
Номер 2
Окно "Autos" в Microsoft Visual Studio 2008:
Ответ:
 (1) показывает рекомендации по устранению предупреждений и ошибок компилятора 
 (2) показывает значения выбранных пользователем переменных 
 (3) показывает значения переменных текущей функции 
Номер 3
Окно "Watch" в Microsoft Visual Studio 2008:
Ответ:
 (1) позволяет переключаться между потоками текущего процесса 
 (2) позволяет переключаться между процессами параллельной MPI программы 
 (3) показывает значения выбранных пользователем переменных 
Упражнение 3:
Номер 1
Окно "Threads" в Microsoft Visual Studio 2008:
Ответ:
 (1) позволяет переключаться между потоками текущего процесса 
 (2) позволяет переключаться между всеми потоками параллельной MPI программы 
 (3) сообщает об обнаруженных проблемах в синхронизации потоков 
Номер 2
В чем особенность отладочной конфигурации программы:
Ответ:
 (1) программа, скомпилированная в отладочной конфигурации, выполняется строго последовательно, что устраняет возможность процессорной гонки и привнесенные этим нежелательные эффекты 
 (2) в отладочной конфигурации в бинарные файлы программы добавляется дополнительная информация, которая позволяет видеть при отладке исходный код на языке высокого уровня 
 (3) при работе в отладочной конфигурации программа сохраняет на диск информацию о промежуточных значениях всех переменных, что позволяет впоследствии восстановить состояние программы в любой момент до падения 
Номер 3
Как называется ситуация, когда процессы параллельной программы взаимодействуют между собой без выполнения каких-либо синхронизирующих действий, что приводит к появлению трудно воспроизводимых ошибок, проявляющихся и исчезающих от запуска к запуску:
Ответ:
 (1) критическая секция 
 (2) гонка процессов 
 (3) взаимная блокировка 
Упражнение 4:
Номер 1
Каким образом можно дать указание в окне Watch распечатать 10 первых элементов массива int myArray[10]:
Ответ:
 (1) myArray,10 
 (2) myArray[0-9] 
 (3) myArray:0…9 
Номер 2
Как связаны между собой идентификатор MPI процесса в группе MPI_COMM_WORLD (получаемый функцией MPI_Comm_rank
) и идентификатор процесса операционной системы (отображаемый в окне Processes в колонке ID):
Ответ:
 (1) в операционной системе Windows идентификаторы совпадают 
 (2) идентификатор операционной системы равен идентификатору MPI процесса плюс смещение, равное идентификатору операционной системы нулевого MPI процесса 
 (3) идентификаторы остаются постоянными в рамках выполнения одной MPI программы 
Номер 3
Макрос ASSERT используется для:
Ответ:
 (1) указания строчки кода, где необходимо прервать выполнение программы в отладочной конфигурации 
 (2) вывода отладочной информации в лог-файл 
 (3) контроля корректности внутренних переменных 
Упражнение 5:
Номер 1
В чем основной недостаток "printf отладки":
Ответ:
 (1) необходимость внесения изменений в код программы 
 (2) отсутствие доступа к некоторым переменным 
 (3) принципиальная невозможность отладки MPI программ 
Номер 2
В чем основной недостаток последовательного отладчика (например, отладчика предыдущих версий среды разработки Microsoft Visual Studio) при отладке MPI программ (по сравнению с параллельным отладчиком Microsoft Visual Studio 2008):
Ответ:
 (1) последовательный отладчик не может использоваться для отладки MPI программ 
 (2) невозможность "видеть" код MPI библиотеки 
 (3) необходимость подключать отладчик к каждому запущенному процессу в отдельности 
Номер 3
В каких случаях на рабочую станцию необходимо устанавливать High Performance Computing SDK:
Ответ:
 (1) удаленный запуск параллельных программ на кластере под управлением High Performance Computing Server 2008 
 (2) разработка параллельных MPI программ с использованием Microsoft MPI 
 (3) проведение локальных тестовых запусков программ, написанных с использованием Microsoft MPI 
Упражнение 6:
Номер 1
Какой прием поможет избежать взаимной блокировки процессов при циклической посылке сообщений с использованием функций MPI_Send/MPI_Recv
(под циклической посылкой здесь понимается ситуация, когда процесс с индексом i передает информацию процессу с индексом i+1, i=0,…,n-2, а процесс с индексом n-1 передает информацию процессу с индексом 0):
Ответ:
 (1) вызов на четных процессорах сначала MPI_Send
, а потом MPI_Recv
, а на нечетных наоборот: сначала MPI_Recv
, затем MPI_Send
 
 (2) добавление функции MPI_Barrier
после MPI_Send
, перед MPI_Recv
 
 (3) запуск MPI_Send
и MPI_Recv
в двух разных потоках 
Номер 2
При использовании неблокирующих функций передачи сообщений в MPI:
Ответ:
 (1) возврат из функций происходит немедленно, адреса массивов с данными сохраняются во внутренние переменные, непосредственная передача будет выполнена в отдельном потоке с использованием сохраненных адресов массивов 
 (2) возврат из функций происходит сразу же по окончании копирования массивов данных во внутренние структуры библиотеки, непосредственная передача выполняется в отдельном потоке с использованием копий массивов 
 (3) возврат из функций происходит только по окончании передачи данных получателю 
Номер 3
Для запуска сеанса параллельной отладки в Microsoft Visual Studio 2008 в качестве запускаемой команды (пункт MPIRun Command) в окне настройки MPI Cluster Debugger необходимо выбрать:
Ответ:
 (1) исполняемый файл параллельной программы, скомпилированной с Microsoft MPI 
 (2) программу mpiexec из High Performance Computing SDK 
 (3) программу mpishim из папки Microsoft Visual Studio 2008