Arquitetura e Organização de Computadores
Por: Guilherm Lika • 20/3/2022 • Trabalho acadêmico • 2.006 Palavras (9 Páginas) • 143 Visualizações
[pic 1]
Arquiteturas SMP/AMP e FPGA
Discentes:
Carlos Alberto da Silva Melo Júnior
Gabriel Albino Correia Silva
Gabriel Nuno Maia
José Franklin Alencar Dantas
Henrique Lira da Silva
Arquitetura e SMP/AMP
SMP
A arquitetura Multiprocessamento Simétrico (SMP) é conhecida como arquiteturas de compartilhamento total, essa arquitetura compartilha todos os recursos computacionais disponíveis e opera em um único sistema operacional. Onde o sistema operacional controla por igual esses processadores, sendo considerados simétricos pois têm os mesmos privilégios de acesso ao hardware. O termo multiprocessador categoriza um sistema de computador com pelo menos dois processadores que geralmente possuem capacidades semelhantes, sendo assim comum a utilização do termo microprocessador multicore.[a]
A principal característica desta arquitetura está no fato de os processadores possuírem uma única memória compartilhada. Vale ressaltar que esses sistemas ainda podem executar tarefas independentes em seus próprios espaços de endereços virtuais, apesar do compartilhamento de endereços físicos.
E as tarefas em relação aos processadores podem ser deslocadas entre os processadores independentes dessa arquitetura, e com isso, gera uma eficiência de finalização do processamento.E com essa eficiência do processo, pode haver uma variação em relação ao consumo de energia. O compartilhamento da memória entre os processadores ajuda em questão ao paralelismo, já que sem esse compartilhamento, o paralelismo seria mais complicado a implementação.[b]
Há dois tipos de microprocessadores com único espaço de endereços sendo eles o UMA (Uniform Memory Access acesso uniforme à memória que é um multiprocessador onde os acessos à memória principal levam aproximadamente a mesma quantidade de tempo, independente de qual processador acessa ou de qual palavra é solicitada) e NUMA (Non-uniform Memory Access acesso não uniforme à memória que é um multiprocessador onde alguns acessos à memória são muito mais rápidos que outros, dependendo de qual processador solicita qual palavra).[c]
Como os processadores operando em paralelo normalmente compartilharam dados, é necessária uma boa coordenação, em caso de falha um processador poderia iniciar seu trabalho nos dados antes que outro tenha terminado. Tal coordenação é chamada de sincronização e trata o comportamento de dois ou mais processos que podem estar sendo executados em cores diferentes, também existe o lock para uma variável compartilhada. Tal técnica garante que apenas um processador por vez pode adquirir o lock. Os outros cores interessados nos dados compartilhados precisam esperar até que o core original libere a variável e o Deadlock é o termo empregado para traduzir um problema ocorrido quando um grupo de processos competem entre si. Um estado de deadlock ocorre quando dois ou mais processos estão esperando indefinidamente por um evento que só pode ocorrer por um dos processos em espera.[d]
AMP
O AMP (Asymmetric MultiProcessor) multiprocessador assimétrico é definido como um sistema onde não há privilégios iguais entre os processadores, o que indica a existência de uma relação mestre-escravo. Um processador é denominado mestre e se encarrega de lidar com as tarefas do sistema operacional, delegando trabalho aos demais processadores escravos, os processadores não são utilizados uniformemente, por não haver flexibilidade para que as tarefas sejam delegadas prioritariamente para os processadores mais ociosos, podem dispor de arquiteturas diferentes entre seus processadores, podendo haver cores com diferentes forças computacionais.[e]
Os processadores escravos geralmente contam com sua própria memória, que não está atrelada à memória do processador primário. A comunicação e a troca de dados entre o mestre e os escravos é feita a partir de um segmento particionado da memória que é alocado unicamente para a realização de tal comunicação.[f]
É importante ressaltar que a aplicação será executada no processador mestre. Os escravos apenas executavam as tarefas que lhe foram delegadas, sendo o mestre quem determina qual tarefa precisa ser realizada e detém a maior parte da carga em sequida ele pode criar instâncias da tarefa em questão para que outros processadores escravos completem o trabalho. O programador tem a responsabilidade de determinar quais trabalhos serão executados por quais processadores, além de se atentar se o processador pode ou não completar uma determinada tarefa, já que o escravo pode não conseguir completá-la devido a sua incapacidade de acessar o mapa de memória inteiro, por exemplo. Não há comunicação entre os processadores escravos e caso haja falha em um processador escravo, suas tarefas são divididas entre outros escravos, o que faz com que a eficiência do sistema seja reduzida. Caso a falha ocorra no processador mestre, um escravo é nomeado mestre.
Comparação do AMP com o SMP
O termo multiprocessador define um sistema de computador mais de um processador que são denominadas cores é comum a utilização do termo microprocessador multicore. Os multiprocessadores são classificados em dois tipos baseados na natureza do seu funcionamento: simétrico e assimétrico.
No SMP, todos os processadores são tratados com o mesmo nível de privilégio; é usada uma fila de requisições, onde sempre que um processador está disponível, ele retira uma tarefa da fila para executá-la; todos os processadores podem realizar tarefas do sistema operacional dependendo da sua disponibilidade; todos os processadores se comunicam através da memória compartilhada; todos os processadores têm a mesma arquitetura. Ou seja, as tarefas são divididas igualitariamente entre esses processadores.
Já no AMP, os processadores não dispõem de privilégios iguais; É usado um sistema de mestre-escravo: o mestre delega tarefas aos processadores escravos; Apenas o mestre realiza tarefas do sistema operacional; Não há comunicação entre os escravos uma vez que todos são controlados pelo mestre; Cada processador pode ter uma arquitetura diferente, o que define este sistema como heterogêneo.
Um artigo, fala sobre o consumo de energia do multiprocessador simétrico, e nesse artigo diz que a arquitetura do AMP, consome menos energia, podendo alcançar alta eficiência energética em relação ao modelo de escala de frequência e tensão dinâmica (DVFS). Pois em algum momento o processador do multiprocessador simétrico, pode está ocioso e com isso não há consumo de energia. Porém, em outras fontes, dizem que o consumo de energia desses processadores pode ser elevado, passado de alguns Hz. E o custo dos processadores são diferentes, a produção dos processadores assimétricos são mais baratos do que os simétricos, por conta de sua arquitetura mestre-escravo.
...