Что такое редуктор?
"Параллельные" глобальные переменные, позволяющие избежать гонок за данными в Intel® Cilk™ Plus это:
Гонки за данными возникают при:
В чём заключается отрицательный эффект "гонок за данными"?
"Гонок за данными" можно избежать, используя:
Может ли влиять на наличие "гонок за данными" размер машинного слова?
Может ли влиять на наличие "гонок за данными" уровень оптимизации?
Относительно какого типа операций задаются редукторы?
Что такое "изображение" переменной?
В какой момент объединяются изображения переменных?
Для чего предназначена утилита cilkscreen?
Что такое cilk::reducer
?
Что такое reducer_list_append
?
Что такое reducer_list_prepend
?
Что такое reducer_max
?
Что такое reducer_max_index
?
Что такое reducer_min?
Что такое reducer_min_index
?
Что такое reducer_opadd
?
Что такое reducer_ostream
?
Что такое reducer_basic_string
?
Сохраняют ли гиперобъекты последовательную семантику программы?
Имеется следующий код:cilk::reducer_opadd<int> sum(3); void f() {cilk_spawn g(); sum += 2; cilk_sync;} void g() {sum++;} Каким будет результат вычисления suS, если в процессе выполнения не произошло захвата работы?
Имеется следующий код:cilk::reducer_opadd<int> sum(3); void f() {cilk_spawn g(); sum += 2; cilk_sync;} void g() {sum++;} Каким будет результат вычисления suS, если в процессе выполнения произошёл захват работы?
Редукторы можно использовать только в циклах.
При использовании редукторов каждый поток имеет доступ к единственному общему экземпляру переменной.
Имеется кодcilk::reducer_opadd<float> sum = 0; ... cilk_for( size_t i=1; i<n; ++i ) sum += f(i); ... = sum.get_value(); Что произойдёт с переменной sum после порождения новых потоков?
Переменная называется локальной, если:
Переменная называется глобальной, если
Возникает ли гонка за данными, если два потока выполняют чтение из общей переменной?
Необходимо ли при использовании редукторов применять мьютексы?
Может ли переменная быть описана как редуктор относительно операции объединения списков?
Может ли переменная быть описана как редуктор относительно операции возведения в степень?
Допустимо ли в программе на C++ использование оператора cilk::reducer_min_index<size_t, T> r;
?
Какой заголовочный файл необходимо использовать в программе на C++, если в ней используется оператор cilk::reducer_min_index<size_t, T> r;
?
reducer_min.h
 
reducer.h
 
cilk_reducer_min.h
 
Сколько изображений переменной, описанной как гиперобъект, будет использоваться в программе, исполняющейся в 5 потоках?
Какой заголовочный файл необходимо использовать в программе на C++, если в ней используется оператор cilk::reducer_opadd<double> result(0);
?
reducer_opadd.h
 
reducer.h
 
cilk_opadd.h
 
cilk.h
 
Имеется кодcilk::reducer_opadd<double> result(0); cilk_for(int i=0; i<data.GetSize(); i++) result += operation(data[i]); return xxx; Что следует подставить вместо xxx?
result.get_value()
 
result_of_op
 
Имеется кодcilk::reducer_opadd<float> sum; void f( int m ) { sum += m; } float g() { cilk_spawn f(1); f(2); cilk_sync; return xxx; } Что следует подставить вместо xxx?
sum.get_value()
 
В программе для многоядерной архитектуры имеется потенциальная опасность гонок за данными. Какие средства Intel® Cilk™ Plus Вы будете использовать для того, чтобы избежать гонок за данными?
Какую функцию можно использовать для вычисления суммы всех элементов массива?
__sec_reduce_add(a[:])
 
__sec_add(a[:])
 
__sec_reduce(a[:])
 
Является ли cilk::reducer
гиперобъектом?
Является ли cilk::private гиперобъектом?
В Cilk-программе необходимо выполнить конкатенацию списков. Какой гиперобъект следует для этого использовать?
reducer_list_append
 
reducer_list_add
 
reducer_add
 
Необходимо ли при использовании редукторов применять блокировки?
Можно ли избавиться от гонки за данными изменением алгоритма вычислений?
Может ли гонка за данными не влиять на результат работы программы?
Допускается ли в Intel® Cilk™ Plus определение пользовательских гиперобъектов?
Какое действие выполняет get_value()
в редукторе?
Из каких логических частей состоит пользовательский редуктор?
View;
класс Monoid;
гиперобъект, создающий изображения переменной; реализация действий с данными 
View;
класс Monoid
 
View;
класс Monoid;
гиперобъект, создающий изображения переменной 
Как ведёт себя редуктор, если не происходит захвата работы?
Как влияет на производительность большое количество редукторов?
Какой редуктор соответствует операции логического ИЛИ?
reducer_opor
 
reducer_or
 
reducer_xor
 
Какой редуктор соответствует операции логического И?
reducer_opand
 
reducer_and
 
reducer_or
 
reducer_xor
 
Какой редуктор соответствует операции логического исключающего ИЛИ?
reducer_opxor
 
reducer_opand
 
reducer_or
 
reducer_xor
 
Какой редуктор соответствует операции конкатенации строк?
reducer_basic_string
 
reducer_string
 
reducer_basic
 
Какой редуктор используется при работе с параллельными потоками?
reducer_ostream
 
reducer_stream
 
stream