Beruflich Dokumente
Kultur Dokumente
Organizao de Computadores AD 2
Gabriel Guimares Pinto 17113050001
1) (2,0) Faa uma busca na lista dos 500 sistemas de computadores com melhor desempenho do mundo
em http://www.top500.org e descreva o primeiro colocado (pesquise neste mesmo site e na internet).
Atualmente, o sistema Sunway TaihuLight o com melhor desempenho. um supercomputador da China e ocupa o
ranking desde 2016. Possui benchmark LINPACK de 93.014,6 teraflops/s (FLOP um acrnimo para Floating-point
Operations Per Second). Um teraflops (TFLOPS) corresponde a um trilho de operaes, logo, o supercomputador
capaz de 93 quadrilhes de operaes por segundo.
Utiliza o processador Sunway SW26010, com 260 Cores e 1.45GHz de velocidade de clock, tendo um processador para
cada um dos seus 40.960 ns, totalizando 10.649.600 ncleos. Sua arquitetura de 64-bit RISC (Reduced instruction
set computer). Outra caracterstica interessante a organizao do sistema de processadores: cada chip possui 256
ncleos + 4 ncleos adicionais, e ao invs da tradicional hierarquia de cache, utiliza 64 KB de scratchpad memory
(SPM) para dados e 16 KB para instrues (O SPM similiar ao cache L1). A comunicao feita atravs do network
on a chip (NoC). Os processadores podem transferir dados para a memria a uma taxa de 136 gigabits por segundo.
Cada processador leva 32 GB de memria, o que totaliza 1,3 petabytes de RAM para toda a mquina. Comparando
grosseiramente, podemos dizer que o supercomputador chins 20 milhes de vezes superior a um Intel i7 caseiro.
A transferncia de dados para dispositivos de armazenamento feita atravs da tecnologia PCIe 3.0, alcanando 16
gigabits/s, possuindo um armazenamento total de 20 petabytes.
Outra caracterstica interessante o consumo energtico: ele precisa de 15 MW (megawatts) de potncia, com uma
eficincia de 6 gigaflop/s/watt, ficando em 3 lugar entre os mais eficientes do mundo.
Direto
o mtodo mais antigo e um dos mais utilizados em arquiteturas de CPU. Nesse mtodo, o valor binrio contido no
campo operando da instruo indica o endereo de memria onde se localiza o dado.
Vantagem. Flexibilidade no acesso a variveis de valor diferente em cada execuo do programa
Desvantagem. Limitao de memria a ser usada, conforme o tamanho do campo operando
Indireto
Nesse mtodo, o valor binrio do campo operando representa o endereo de uma clula; mas o contedo da referida
clula no o valor de um dado (como no modo direto); um outro endereo de memria, cujo contedo o valor do
dado. Assim h um duplo endereamento para o acesso a um dado e, conseqentemente, mais ciclos de memria para
buscar o dado, comparativamente com os mtodos j apresentados.
Vantagem: O endereo intermedirio (contedo da clula endereada pelo valor do campo operando) conhecido como
ponteiro, pois indica a localizao do dado (aponta para o dado). Com esse processo, elimina-se o problema do modo
direto, de limitao do valor do endereo do dado, pois estando o endereo armazenado na memria (pode ocupar uma
ou mais clulas), se estender ao tamanho necessrio representao do maior endereo da MP do sistema de
computao em uso
Desvantagem: A grande desvantagem desse mtodo , obviamente, a maior quantidade de ciclos de memria requerida
para completar o ciclo da instruo, pois, para se acessar um dado no modo indireto, necessrio se efetuar dois acessos
memria (um para buscar o endereo do dado e o outro para efetivamente buscar o dado).
Imediato
O mtodo mais simples e rpido de obter um dado indicar seu prprio valor no campo operando da instruo, em vez
de busc-lo na memria.
Vantagem: Curto tempo de execuo da instruo, pois no gasta ciclo de memria para sua execuo, exceto o nico
requerido para a busca da instruo. Assim, o dado transferido da memria juntamente com a instruo (para o IR),
visto estar contido no campo operando da instruo.
Desvantagem. Uma de suas desvantagens reside na limitao do tamanho do campo operando das instrues, o que
reduz o valor mximo do dado a ser manipulado. Outra desvantagem o fato de que, em programas repetidamente
executados, com valores de variveis diferentes a cada execuo, esse mtodo acarretaria o trabalho de alterao do
valor do campo operando a cada execuo (dado de valor diferente).
b) Qual o objetivo do emprego do modo de endereamento base mais deslocamento? Qual a diferena
de implementao e utilizao entre esse modo e o modo indexado?
O modo de endereamento base mais deslocamento tem como seu principal objetivo permitir a modificao de endereo
de programas ou mdulos (que a relocao de programa), bastando para isso uma nica alterao no registrador base.
O modo de endereamento base mais deslocamento tem como caracterstica o endereo ser obtido da soma do
deslocamento com o registrador base, diferindo do modo indexado.
No indexado, o endereo do dado a soma do valor do campo operando (que fixo para todos os elementos de um dado
vetor) e de um valor armazenado em um dos registradores da UCP (normalmente denominado registrador ndice). O
modo indexado utilizado para acessar arrays, o campo de deslocamento guarda o endereo inicial e registrador
mantem o ndice do array.
A compilao consiste na anlise de um programa escrito em linguagem de alto nvel (programa fonte) e sua traduo
em um programa em linguagem de mquina (programa objeto).
Na interpretao cada comando do cdigo fonte lido pelo interpretador, convertido em cdigo executvel e
imediatamente executado antes do prximo comando.
A interpretao tem como vantagem sobre a compilao a capacidade de identificao e indicao de um erro no
programa-fonte (incluindo erro da lgica do algoritmo) durante o processo de converso do cdigo fonte para o
executvel.
A interpretao tem como desvantagem o consumo de memria, devido ao fato de o interpretador permanecer na
memria durante todo o processo de execuo do programa. Na compilao o compilador somente mantido na memria
no processo de compilao e no utilizado durante a execuo. Outra desvantagem da interpretao est na necessidade
de traduo de partes que sejam executadas diversas vezes, como os loops que so traduzidos em cada passagem. No
processo de compilao isto s ocorre uma nica vez.
Interpretadas: Python, PHP, Javascript.
Compiladas: Visual Basic, C, Pascal.
SIMD Single instruction stream, multiple data stream. Vrios elementos de processamento. Cada um tem uma
memria de dados. Cada instruo executada sobre um conjunto de dados diferente. Exemplo: Processadores matriciais
e vetoriais.
3) (2,0) Faa uma pesquisa e descreva a tcnica de Simultaneous Multi-Threading (SMT), tambm
chamada de Hyper-threading. Sugesto: https://en.wikipedia.org/wiki/Simultaneous_multithreading.
Uma thread um conjunto de tarefas existentes em um ou mais programas, executadas ao mesmo tempo pelo
processador. Uma Thread acontece quando um programa precisa resolver duas ou mais tarefas concorrentes (e em
andamento). Nos computadores cujo processador possui um ncleo, as threads so processadas de maneira,
aparentemente, simultnea, pois a mudana entre uma e outra feita de maneira muito rpida. Nos computadores cujo
processador tem mais do que um ncleo, as threads so efetivamente realizadas de forma simultnea.
Hyper-threading ou Simultaneous multithreading (SMT), uma forma posterior da tecnologia SuperThreading, mas sem
a limitao de que todas as instrues executadas em um mesmo ciclo de processamento sejam da mesma thread. A
tencologia SMT permite que as threads sejam executadas em paralelo (paralelismo) dentro de cada ncleo de processador
existente no computador. Este tipo de processamento aproveita de forma mais eficiente o uso dos recursos dos
processadores e melhora ainda mais a performance multithread dos programas.
Pode-se dizer que um nico processador com tecnologia hyper-threading habilitada tratado pelo sistema operacional
como dois processadores ao invs de apenas um. Assim sendo, um nico processador fsico poderia ser tratado pelo
Sistema como dois processadores virtuais dividindo tarefas entre eles.
O primeiro processador moderno a usar o sistema SMT foi o Intel Pentium 4. Atualmente, os Core i7 da Intel, apesar de
possurem quatro ncleos fsicos simulam o funcionamento de oito.
4) (3,5) Considere um computador, cuja representao para ponto fixo e para ponto flutuante utilize 32
bits. Na representao para ponto flutuante, utiliza-se o padro IEEE 754 para preciso simples.
a) Caso o computador tenha armazenado o contedo (F2A86800)16, qual o valor deste nmero em
decimal, se considerarmos que este padro de bits representa um inteiro utilizando-se representao
sinal magnitude, um inteiro em complemento a 2 e um real em ponto flutuante? (1,0)
Sinal = 1 = negativo
Expoente = 11100101 = 229 127 = 102
Mantissa = 01010000110100000000000 = 1,01010000110100000000000 x 2102
= -101010000110100000000000 x 279
= - 2102 + 2100 + 298 + 293 + 292 + 290
= -3,47 x1030
b) Qual ser a representao em ponto flutuante dos seguintes valores decimais neste computador:
i) +9.112,25 (0,5)
c) Mostre a representao dos nmeros dos itens da questo acima, caso se utilizasse a representao
complemento a 2 para representar o expoente. (0,7)
i) +9.112,25
ii) 91,625
Convertendo para binrio = (1011011,101)2 = 1,011011101 x 26
Sinal = 1 (negativo)
Expoente = +6 = 00000110 (complemento a 2)
Mantissa = ,011011101
Resultado = 1 00000110 01101110100000000000000