• Nenhum resultado encontrado

Mestrado Integrado em Engenharia Informática e Computação. Arquitecturas Avançadas de Computadores Exame final

N/A
N/A
Protected

Academic year: 2021

Share "Mestrado Integrado em Engenharia Informática e Computação. Arquitecturas Avançadas de Computadores Exame final"

Copied!
8
0
0

Texto

(1)

Exame final

Com consulta

Atenção: Este exame tem 6 questões em 8 páginas, num total de 200 pontos. Justifique todas as respostas e apresente todos os cálculos.

1. O tempo de execução de um programa é repartido da seguinte forma: 40% em operações de vírgula flutuante, 30% em operações aritméticas com números inteiros, e 30% em outras operações.

Pretende-se considerar duas melhorias diferentes:

• A: unidade de vírgula flutuante 1,4 vezes mais rápida; • B: redução de 25% das operações de vírgula flutuante. (a)

(10) Determine o aumento de rapidez (speedup) que seria obtido por cada melhoramento. Solução:

Trata-se de uma aplicação da lei de Amdahl:

S = 1

(1 − p) +fp Speedup no primeiro caso:

S1 =

1

0,6 + 0,41,4 = 1,13

Uma redução de 25% corresponde a usar apenas 75% do tempo original:

f2= 1 0.75 = 4 3 Logo: S2 = 1 0,6 + 0,4f 2 = 1,11 (b)

(15) Qual seria o aumento de rapidez obtido pela utilização simultânea dos dois melhora-mentos?

Solução:

Como se trata de melhoramentos que se aplicam à mesma parte do tempo de execução (o tempo gasto em operações de vírgula flutuante), basta multiplicar os factores de melhoramento locais (i.e., os que se aplicam às operações de vírgula flutuantes, não os factores S1 e S2 globais).

f0 = f1× f2 = 1,4 ×

4

(2)

Logo, o factor de melhoria de rapidez global é: S0 = 1

0,6 + 0,4f0

= 1,23

(c)

(10) Determine a percentagem do tempo de execução gasto em outras operações no caso de serem usados os dois melhoramentos.

Solução:

Sejam T o tempo de execução sem melhoramentos e T0 o tempo com os dois me-lhoramentos.

T0 = 0,3 T + 0,4

1,87T + 0,3 T Por outro lado:

T0 = tempo VF + tempo outras instruções O segundo termo não é alterado pelos melhoramentos. Logo:

tempo outras instruções = 0,3T + 0,3T = 0,6 T A percentagem de tempo pretendida é então:

0,6 T T0 =

0,6 T

0,6 T +1,870,4 T = 0,737

Com a utilização dos melhoramentos 73,7 % do novo tempo de execução é despen-dido na execução de outras instruções.

2. Um microprocessador fabricada em tecnologia CMOS 90 nm tem 200 mm2, operando a uma tensão de 1,5 V e uma frequência de 1 GHz. O circuito consome 40 W.

(a)

(10) Num dado sistema, o processador é usado à frequência nominal 70% do tempo. No restante, a frequência é de 0,5 GHz com uma tensão de alimentação de 1 V. Determine o consumo de potência neste cenário.

Solução:

A potência consumida é dado por: P = 1

2 × C × V

2× f

Nas condições nominais P = 40 W. No modo de poupança, temos: V0= 1 = V 1,5 f 0 = f 2 Portanto: P0 = 1 2 × C × V2 1,52 × f 2 = P 1,52× 2 = P 4,5 = 8,89 W

(3)

O consumo de potência é dado pela média pesada do consumo nas duas situações: 0,7 × 40 + 0,3 × 8,89 = 30,67 W

(b)

(10) Sabendo que uma bolacha de 300 mm custa 10000e a fabricar e que o rendimento do processo de fabrico é 80%, determine o custo unitário do processador.

Solução:

Primeiro, determina-se o número N de circuitos fabricados. π × 1502

200 −

π × 300 √

2 × 200 = 306,3

Logo, N = 306. Desses, apenas 244 (0,8 × N = 244,8) podem ser vendidos. Portanto, o seu custo unitário é:

10000

244 = 40,98 (e/circuito)

(c)

(10) Assuma que o processador é migrado para uma tecnologia de 65 nm e que o custo de fabrico da bolacha é de 12000e. Para igual rendimento do processo de fabrico, determine o novo custo nominal.

Solução:

É preciso calcular as dimensões do circuito integrado na nova tecnologia. O factor de redução de dimensão linear é:

65

90 = 0,722 O factor de redução da área é:

0,7222= 0,52 Logo, a área do circuito na nova tecnologia é:

200 × 0,52 = 104,3 mm2

Nota: trata-se de uma grande simplificação, já que a conversão entre tecnologias de dimensões diferentes é complicada.

O novo número de circuitos N0 é: π × 1502

104,3 −

π × 300 √

2 × 104,3 = 612,4

(4)

custo unitário é:

12000

489 = 24,54 (e/circuito)

3.

(25) Muitos processadores possuem contadores de eventos (performance counters). Explique em que consistem e qual a sua utilidade. Descreva brevemente como podem ser usados via programas como Oprofile e quais os cuidados a ter na interpretação dos valores obtidos.

Solução:

I Contadores de eventos geram uma interrupção quando um dado número de eventos

internos ocorre no processador. Para cada contador é possível configurar o número limite e o evento a ser contabilizado (falha de página, instrução terminada, previsão de salto errada, etc.). O número de contadores é limitado (p.ex. 4).

I Para cada interrupção, o sistema de monitorização deve usa o program counter para

determinar a zona de memória correspondente. Daí obtém informação sobre o pro-cesso cujas instruções estavam nessa zona. O evento é “atribuído” a esse propro-cesso.

I Oprofile usa um kernel driver para processar as interrupções, em conjunto com várias aplicações para calcular estatísticas e visualizar resultados (quantos eventos são atribuídos a cada processo, etc.). Também permite estabelecer a correspondência entre código-objecto e código-fonte de cada processo. Além disso, fornece um conjunto de comandos para controlar o processo de amostragem (definição dos eventos, limites dos contadores, etc.)

I Os resultados têm apenas valor estatístico: é preciso efectuar a amostragem durante

um tempo suficientemente longo e repetir as medições várias vezes.

I A utilização de contadores de desempenho permite realizar medições em sistemas

reais, com cargas computacionais reais, sem alterar significativamente o desempenho do sistema.

4. Considere o seguinte fragmento de código:

1 daddi r3, r0, 4 2 add.d f1, f0, f0 3 l.d f2, 200(r3) 4 mul.d f2, f2, f2 5 add.d f1, f1, f2 6 beqz r3, fim 7 daddi r3, r3,-8 8 fim: s.d f2, 100(r0) (a)

(5)

Solução:

1. 1 → 3, via r3, dep. verdadeira; 2. 3 → 4, via f2, dep. verdadeira; 3. 4 → 5, via f2, dep. verdadeira; 4. 3 → 4, via f2, dep. de saída; 5. 2 → 5, via f1, dep. de saída; 6. 1 → 6, via r3, dep. verdadeira; 7. 1 → 7, via r3, dep. verdadeira; 8. 1 → 7, via r3, dep. de saída; 9. 6 → 7, via r3, anti-dependência; 10. 3 → 7, via r3, anti-dependência; 11. 4 → 8, via f2, dep. verdadeira. (b)

(25) Apresente o diagrama temporal para a execução deste fragmento na pipeline Win-MIPS64. Assuma que a previsão de saltos é perfeita.

Solução:

5.

(30) Apresente a organização de um previsor de saltos (2,1) de 2048 bits (incluindo as dimensões dos respectivos componentes) e explique o seu princípio de funcionamento.

Solução:

Trata-se de um previsor de saltos que usa 2 bits de história (resultado dos dois últimos saltos realizados) para seleccionar 1 de 4 previsores simples (com 1 bit por posição). Cada previsor simples tem 2048/4 = 512 bits (e posições). O bit a usar na provisão é determinado pelos 11 bits menos significativos do endereço da instrução de salto. Para cada instrução, o CPU determina se se trata de uma instrução de salto condicional. Em caso afirmativo, usa os 11 bits menos significativos do contador de programa (PC) para consultar a tabela. O valor obtido é usado como previsão do salto (tomado vs. não-tomado).

(6)

Quando o CPU determina o resultado do teste, actualiza a tabela com o valor corres-pondente ao seu real desfecho. A história global (registo dos dois últimos saltos, neste caso) também é actualizada. Se a previsão estava errada, todas as instruções posteriores são anuladas.

6. Um multiprocessador SMP tem 16 CPUs. O estado das memória cache de alguns dos processadores está indicado abaixo, bem como parte da memória principal. As memórias cache são de mapeamento directo, com quatro blocos de duas palavras (de 4 bytes) cada. O sistema usa o protocolo de monitorização do barramento analisada nas aulas. Os estados dos blocos são M (modificado), S(partilhado) e I (inválido). Todos os números estão em hexadecimal.

P0 Est Eti Dados B0 I 100 00 10 B1 S 108 00 08 B2 M 110 00 30 B3 I 118 00 10

P1 Est Eti Dados B0 I 100 00 10 B1 M 128 00 68 B2 I 110 00 10 B3 S 118 00 18

P15 Est Eti Dados B0 S 120 00 20 B1 S 108 00 08 B2 I 110 00 10 B3 I 118 00 10 O conteúdo de memória é: Endereço Dados 100 00 00 108 00 08 110 00 10 118 00 18 120 00 20 128 00 28 130 00 30

Para as operações indicadas a seguir, indique as alterações de estado no sistema, bem como os valores que resultam das operações de leitura. Cada operação é aplicada ao estado inicial descrito acima.

(a)

(10) P15: leitura da posição 118. Solução:

Processador P15, bloco B3: (S, 118, 00, 18) (obtém valor de memória).

(b)

(15) P15: escrita do valor 80 na posição 118. Solução:

Processador P15, bloco B3: (M, 118, 00, 08). Processador P1, bloco B3: (I, 118, 00, 18).

(c)

(15) P15: leitura da posição 110. Solução:

(7)

Processador P15, bloco B3: (S, 110, 00, 30).

Memória, posição 110: (00, 30) (actualização de memória).

(8)

Anexo

Características da pipeline WinMIPS64:

Unidade funcional Latência Intervalo ALU (inteiros) 0 1 Memória de dados 1 1 Somador VF 3 1 Multiplicador (VF e int.) 6 1 Divisor (VF e int.) 24 25

Nota: Instruções podem ser emitidas para as unidades funcionais (para desocuparem o andar ID) e ficar proteladas aí (no primeiro estágio das unidades funcionais multi-estágio).

Referências

Documentos relacionados

Tivemos a colaboração de muitos voluntá- rios, como os do Grupo de Apoio Francisco Alves, que organizaram as Sacolas de Natal das crianças da Creche, e os funcionários da

Microempresas e Empresas de Pequeno Porte optantes pelo Simples Nacional (Pert-SN-MEI) Microempreendedor Individual. DAS-MEI (Documento de Arrecadação Simplificada do

Dizemos isso porque, no cálculo da diferença a favor do consumidor ou no complemento do preço, há de ser considerado o preço do produto viciado como era praticado à vista. Apenas

Ele descreve a maneira como você se diferencia dos outros, como se indivi- dualiza, como encara a vida, como co- meça qualquer atividade, como nasce e renasce a cada fase de sua

O mito do eterno retorno afirma, por negação, que a vida que desaparece de uma vez por todas, que não volta mais, é semelhante a uma sombra, não tem peso, está morta por

O objetivo geral do trabalho é comparar o resultado econômico gerado pelo curso de Ciências Contábeis, na Universidade Federal Rural do Semi-Árido -UFERSA e na Universidade

Workshop de Dança – Lina Frazão Galeria 3 14h às 16h Renascimento de Natal Vão Central 19h Festival Novadança Conversando com o artista Giovane Aguiar Teatro I 21h 20 –

O mencionado Decreto-Lei nº 7/2015, de 13 de janeiro, veio instituir, a partir de 1 de julho de 2015, uma tributação em sede de Imposto do Selo, correspondente a 0,0125% da