Teoria Flashcards

1
Q

Quais das tecnologias de RAID usaria no caso de querer baixar o tempo de acesso ao disco, RAID 0 ou RAID 2?

A

Para reduzir os tempos de acesso aos discos deve ser usado RAID 0 face a RAID 2, pois, apesar de RAID 0 não ter replicação da informação e ser redundante, RAID 2 é bastante complexo na prática e também lento face aos restantes, isto porque utiliza Error Correcting Code (ECC).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Na coerência de Cache um Shared Memory Multiprocessor (SMP) com Uniform Memory Access (UMA) pode ser conseguido com protocolos Snooping. Quais as duas variantes para estes protocolos?

A
  • Update Protocol - Invalidate Protocol
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

O que é o Update Protocol?

A

Copia a informação, não a invalidando, é um optimo e forte protocolo mas gasta muita largura de banda.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

O que é o Invalidate Protocol?

A

Não tem bloqueios e pode ser implementado usando o bit de validade. Se algum processo quiser ler/escrever, invalida todas as copias remotas da Cache quando um bloco é actualizado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Quais os três tipos de multithreading que existem?

A
  • Course-grain Multithreading - Fine-grain Multithreading - Simultaneous Multithreading (SMT)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Quais são as vantagens do Simultaneous Multithreading (SMT)?

A

1) Melhora a eficiencia global de CPUs Superscalar com Hardware Multithreading; 2) Permite várias threads independentes serem executadas para uma melhor utilização dos recursos em processadores com arquitecturas mais modernas;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Qual a desvantagem do Simultaneous Multithreading (SMT)?

A

Redução da performance no caso de algum recurso partilhado ficar entupido.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Qual a vantagem do Course-grain Multithreading?

A

Troca rápidamente entre threads bloqueadas e aquela que estiver à espera de correr.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Qual a desvantagem do Course-grain Multithreading?

A

Sobre carga de inicialização entre esvaziar a lista de threads e o começo de uma nova.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Qual a vantagem do Fine-grain Multithreading?

A

Permite que todos os stalls sejam tratados durante aquele processo singular.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Qual a desvantagem do Fine-grain Multithreading?

A

Sacrifica significamente a performance das threads singulares dado que uma thread apenas tem que esperar após a execução da próxima instrução e todos os stalls encontrados até aqui serão tolerados e assim é necessário esperar que a instrução acabe.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

O que faz o 1-bit Dynamic Branch?

A

Após descodificar e constatar que é uma instrução de desvio, usam-se os bits menos significativos para decidir se o desvio será tomado ou não. Neste caso pode resultar num aumento do Speedup mas em contra partida podem ocorrer erros e devios. Caso o esquema não seja preciso a performance do CPU pode ser pior.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Qual a técnica de optimização de uma cache que nos permite melhorar o Hit Time?

A

Diminuir o numero de vias de associatividade (comparadores e tempo de acesso), onde a solução passa por ter blocos e cache mais pequenos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Qual a técnica de optimização de uma cache que nos permite melhorar o Hit Rate?

A

Aumentar o numero de vias de associatividade (diminui colisões) o que irá aumentar posteriormente o numero de sucessos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

De que forma é que uma Direct Memory Access (DMA) irá aumentar a performance do CPU?

A

Com DMA o CPU em primeiro lugar inicializa as transferencias e após isto, faz outras operações em paralelo, por fim recebe um sinal de interrupção da DMA quando essas operações estiverem concluidas. Já sem DMA quando um CPU utiliza um programa I/O tipicamente é ocupado na sua totalidade pela duração de operações R/W sendo assim impossivel de fazer outras operações em paralelo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Para notificações de completude ou de erro numa transferencia DMA, que método deveria ser considerado neste caso, polling ou interruption?

A

O melhor método a ser utilizado é o método de interruption, pois recebendo um sinal de interrupção da DMA este é necessário quando as interrupções estiverem acabadas.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

O uso de uma DMA pode influenciar qualquer estado de uma Cache?

A

Uma DMA influencia o estado de uma Cache dado que manipula de forma dinamica a informação em Memória podendo causar incoerência na Cache.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Em que situação é que uma Shared-Memory System (UMA), com caches de nível 1 privadas por processador, tendo uma cache singular C junto à memória principal, e partilhada por todos os processadores, pode ser uma vantagem?

A

Pode ser uma melhor escolha se o objectivo for ter mais informação em Cache e assim, a ocupação do BUS não é bottleneck.

19
Q

Em que situação é que uma Shared-Memory System (UMA), com caches de nível 1 privadas por processador, que usa p caches de tamanho C/p, privadas a cada processador, colocada depois da cache de nível 1, pode ser uma vantagem?

A

É melhor se quisermos diminuir a ocupação do BUS.

20
Q

Se uma tabela de páginas tiver um “referenced bit”, de que forma é que este bit pode ser usado para implementar uma aproximação à LRU?

A

Quando uma página é referenciada o nosso “referenced bit” é colocado para essa página, colocando-o como bit referenciado. Pode ser usado para uma aproximação à LRU dado que mantém o “referenced bit” que é determinado sempre que uma página é usada. Ao final de um dado periodo os “referenced bits” são resetados.

21
Q

Considerando um sistema de baixa potencia usado na implementação de um relógio de alarme. Que solução seria mais aconselhada para a detecção de um evento de alarme, polling ou interruption?

A

Usar a técnica de interruption, boa para eventos asincronos, urgentes e pouco frequentes.

22
Q

Num sistema baseado em interrupções, de que forma é que as tarefas/interrupções são tratadas de forma a garantia que as de maior urgencia são tratadas primeiro?

A

Através de semáforos que colocam as menos frequentes em background.

23
Q

Fará sentido para o CPU usar polling quando queremos detectar completude de sucesso ou falhas de uma transferencia DMA?

A

Não fará sentido visto que uma DMA trabalha em background sem necessidade de interrupção do CPU, enquanto que polling requer o CPU para activamente monitorizar os processos.

24
Q

Qual a desvantagem de uma arquitectura Nonuniform Memory Access (NUMA)?

A

Programar arquitecturas NUMA é bastante mais complexo.

25
Q

Qual a vantagem de uma arquitectura Nonuniform Memory Access (NUMA)?

A

Pode escalar para tamanhos maiores e ter menor latencia face a memória local.

26
Q

Qual a razão principal para que haja North e South Bridges nos computadores modernos?

A

North Bridge: faz comunicação da Motherboard com o CPU. South Bridge: faz a comunicação da Motherboard e os I/O.

27
Q

Os processadores MIPS não tem instruções dedicadas de acesso aos dispositivos I/O. De que forma pode o programador aceder aos I/O?

A

MIPS utiliza Memory-mapped I/O.

28
Q

Quais as razões para as quais as transferencias DRAMs não sejam sustentáveis?

A

1) Tem gastos de energia muito elevados; 2) Os dados podem não ser transferidos na ordem que foram enviados (inconsistencia) quando o BUS se encontrar cheio;

29
Q

Num sistema UMA, qual é a politica de escrita usualmente utilizada para a Cache privada de cada processador?

A

Como o sistema UMA tem apenas memória unificada a melhor politica de acesso à memória é write-back, com o objectivo de reduzir o número de acessos a esta.

30
Q

Em uma arquitectura NUMA esta pode ser operada via dois tipos de sistema. Quais são?

A

1) Distributed Shared Memory (DSM). 2) Message-Passing Multiprocessor (MPP).

31
Q

O que é um sistema Distributed Shared Memory (DSM)?

A

As várias memórias podem ser endereçadas como uma só, onde o termo memória partilhada não existe como sendo uma memória centralizada mas sim como sendo um espaço de memória partilado.

32
Q

O que é um sistema Message-Passing Multiprocessor (MPP)?

A

Cada processador tem o seu espaço privado de endereçamento, os processadores partilham a informação de forma explícita enviando e recebendo informação (message passing). A coordenação é constituida através de mensagens passadas por primitivas (envio e recepção).

33
Q

Quais as vantagens de uma cache de mapeamento directo face a uma cache completamente associativa?

A

1) Acesso mais rápido; 2) Mapeamento direto apenas lê e testa uma posição da cache enquanto a totalmente associativa lê e verifica as etiquetas de todas as posições da cache;

34
Q

Quais as desvantagens de uma cache de mapeamento directo face a uma cache completamente associativa?

A

1) Mais faltas de conflito pois diferentes endereços calham na mesma posição de uma cache de mapeamento directo provocando substituição do bloco; 2) Totalmente associativa só substitui os blocos quando estiver toda cheia;

35
Q

Que tipo de RAID permite diminuir a probabilidade de perda de dados num centro de dados com N computadores, onde cada computador tem dois discos rígidos?

A

Supondo um sistema de forma individual, não sendo distribuido, RAID 1 seria a melhor opção dado que permite diminuir a probabilidade de perda de dados.

36
Q

Considere um sistema embebido usado para controlar um sensor de alarme wireless. Seria indicado usar um processador Intel dual core i3?

A

Não seria indicado pois é demasiado caro não havendo necessidade.

37
Q

Qual a diferença entre Fine-grain Multithreading e Simultaneous Multithreading (SMT)?

A

Fine-grain Multithreading: apenas são executadas as instruções de uma thread por ciclo de relógio. Simultaneous Multithreading: permite execução de threads diferentes num ciclo de relógio.

38
Q

Porque é que não faz sentido falar em aplicar SMT a processadores VLIW (Very Large Instruction Word)?

A

Porque SMT funciona com agendamento dinâmico enquanto que VLIW o agendamento é estático (Compilador).

39
Q

Por que motivo as arquiteturas computacionais tem uma separação de barramentos, como por exemplo a existência de uma ponte norte e outra sul (north e south bridge) nas arquiteturas x86?

A

Para não comprometer a rapidez (North) com a necessidade de lidar um conjunto elevado de protocolos (South).

40
Q

Indique uma vantagem da tecnologia RAID 5 face à tecnologia RAID 1.

A

Maior rapidez de acesso; Menor overhead em termos de espaço.

41
Q

De que forma é que as matrizes de Hadamard permitem aumentar a fiabilidade dos sistemas?

A

Deteção e correção de erros através do envio de informação redundante.

42
Q

Indique a limitação principal de cada um destes sistemas: um servidor de memória partilhada e um cluster de PCs de memória distribuída.

A

Memória partilhada: escalabilidade; Memória distribuída: maior dificuldade na partilha de dados

43
Q

Considere que se arranjavam discos com um tempo de acesso a 8kB igual ao tempo de acesso a 4kB. Indique uma vantagem e uma desvantagem de se usarem páginas de 8kB em vez de 4kB.

A

Vantagens: - Potencialmente melhor exploração do princípio da localidade espacial; - Redução do tamanho da tabela de páginas; Desvantagem: - Maior desperdício por baixar a utilização média de cada página;

44
Q

Explique como é que a utilização de tabelas de páginas impede um programa de aceder a instruções e dados de outro programa (assuma que não há páginas explicitamente partilhadas).

A

Cada programa usa uma tabela de páginas própria, que mapeia todas as páginas que o programa usa. Logo o programa apenas consegue obter endereços físicos das suas páginas, não tendo portanto forma de aceder à memória com endereços que não sejam os seus