Questão #13517772011

Sistemas de Informação (TI)

Um dos problemas clássicos da computação científica é a multiplicação de matrizes. Assuma que foram declaradas e inicializadas três matrizes quadradas de ponto flutuante, a, b e c, cujos índices variam entre 0 e n - 1. O seguinte trecho de código pode ser usado para multiplicar matrizes de forma sequencial:Imagem da questão O objetivo é paralelizar esse código para que o tempo de execução seja reduzido em uma máquina com múltiplos processadores e memória compartilhada. Suponha que o comando co” seja usado para definição de comandos concorrentes, da seguinte forma: co [i = 0 to n - 1] { x; y; z;}” cria n processos concorrentes, cada um executando sequencialmente uma instância dos comandos x, y, z contidos no bloco. Avalie as seguintes afirmações sobre o problema. I. Esse problema é exemplo do que se chama embaraçosamente paralelo”, porque pode ser decomposto em um conjunto de várias operações menores que podem ser executadas independentemente. II. O programa produziria resultados corretos e em tempo menor do que o sequencial, trocando-se o for” na linha 1 por um co”. III. O programa produziria resultados corretos e em tempo menor do que o sequencial, trocando-se o for” na linha 2 por um co”. IV. O programa produziria resultados corretos e em tempo menor do que o sequencial, trocando-se ambos for”, nas linhas 1 e 2, por co”. É correto o que se afirma em