¿Cuál de las siguientes operaciones no corresponde a una función de reducción en DPC++? (10 puntos)
Dado el siguiente código. Indicar el orden en el que son ejecutado cada uno de los kernels. (10 puntos)
queue q; auto A = q.submit([&])(handler& h){}); auto C = q.submit([&])(handler& h){ h.depends_on(A); }); auto B = q.submit([&])(handler& h){ h.depends_on(A); h.depends_on(C); }); auto D = q.submit([&])(handler& h){ h.depends_on(A); h.depends_on(B); }); auto E = q.submit([&])(handler& h){ h.depends_on(C); h.depends_on(D); });
Ingrese su respuesta
¿Cuál de los siguientes patrones de diseño considera el uso de datos de vecinos para generar un resultado final? (10 puntos)
Indicar si la siguiente afirmación es verdadera o falsa. Una reducción paralela requerirá una menor cantidad de operaciones que una reducción secuencial. (10 puntos)
Indicar si la siguiente afirmación es verdadera o falsa. Un scan paralelo requerirá una menor cantidad de operaciones que un scan secuencial. (10 puntos)
Indicar el vector resultante luego de aplicar al vector A una operación Gather con los índices en B: (10 puntos)
Vector con valores –> A: [4, 2, 3, 5, 0, 1, 3, 2] Vector con índices –> B: [5, 1, 1, 0, 3, 2, 4, 0]
Indicar cuál es el objetivo de agregar padding (o relleno) al programar estructuras AoS y SoA. (10 puntos)