Baixe o app para aproveitar ainda mais
Prévia do material em texto
Rodrigo Caramori RA: 2020106465 Ao longo da Unidade, aprendemos os conceitos fundamentais sobre o funcionamento dos computadores, dentre os quais, a relação de Arquitetura e Organização de Computadores e a família de processadores (STALLINGS, 2010), alguns níveis de abstração e o resumo da história dos computadores, proporcionando ao leitor a capacidade de entender questões mais aprofundadas e importantes como desempenho computacional. Considerando essas informações e os conteúdos estudados, apresente e explique as formas e técnicas adicionais para melhoria do desempenho de hardware. Referência STALLINGS, W. Arquitetura e Organização de Computadores. 8. ed. São Paulo: Pearson Pratice Hall, 2010. Disponível na Biblioteca Virtual: https://fmu.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_198689_1&con tent_id=_4122211_1&mode=reset. Acesso em: 3 maio 2018. Existem muitas formas e caminhos para que se consiga melhorias no desempenho de um hardware. E para se conseguir isso, existem vários caminhos. Um ponto importante a se observar quando falamos em melhorar o desempenho de hardware, é o ponto de vista do qual estamos falando. Se falarmos do conjunto de peças um computador por exemplo, podemos aumentar a velocidade do hardware, como conjunto, fazendo a substituição de peças, como por exemplo, substituindo a memória RAM, por uma maior, com maior taxa de transferência e/ou menor latência. Assim como podemos substituir o HD, por um SSD (SATA ou MVNe, até mesmo substituir um SSD SATA por um MVNe), ou até mesmo usá-los em conjunto, já pode significar um ganho considerável no ganho de desempenho. Enfim, podemos falar de vários componentes além desses que ajudam a melhorar o desempenho, como: Processador, placa mãe, placa de vídeo e sistema de refrigeração. Mas, e quando falamos da CPU, o que é feito para garantir os ganhos de desempenho? Podemos citar vários fatores que interferem no desempenho da CPU, como por exemplo, a litografia (distância entre os transistores do processador), pipeline, super escalaridade, frequência de processamento (clock), multicore, hyper-threading, memória cache e registradores, são alguns dos principais fatores que influenciam no desempenho. Quando falamos de litografia, não falamos apenas da distância entre os transistores dentro do processador, mas também, de uma das consequências que é de igual importância para o despenho, que é a quantia de transistores dentro do processador. O que acontece, é que quanto menor a distância entre os transistores, menos tempo a informação demora para ser transmitida entre eles, bem como um maior número de transistores, será capaz de processar mais instruções de uma única vez, tudo isso gastando menos energia e aquecendo menos. Porém, temos limitações, que estão demorando para serem transpostas, no que diz respeito a litografia. Hoje estamos com uma litografia de 7nm, o grande problema, é que quanto menor a litografia e menos o caminho a ser percorrido pela informação, mais fino, mais estreito também tem que ser esse caminho, o que pode fazer com que esse sinal não consiga passar, ou simplesmente se perca no meio do caminho. O pipeline, é uma técnica de hardware, que permite que mais de uma instrução seja executada ao mesmo tempo, ou seja, de forma paralela. As instruções são colocadas em uma fila dentro da CPU e assim que o primeiro estágio, da primeira instrução é concluído e ela vai para o próximo estágio, a próxima instrução da fila começa a ser executada, não precisando assim, que a primeira instrução seja completamente concluída para começar, reduzindo assim, significativamente o tempo necessário para realizar um conjunto de instruções. Essa técnica, tem que ser muito bem implementada e para que funcione corretamente, todas as instruções devem ser do mesmo tamanho e as operações de escrita, sempre precisam vir antes das de leitura. Também temos a superescalaridade, outra técnica de hardware, que, a grosso modo falando, paraleliza a paralelização feita pelo pipeline. As primeiras implementações de superescalaridade, colocavam dois pipelines sendo executados ao mesmo tempo, ou seja, duas instruções eram executadas por ciclo de forma paralela. Nas implementações atuais, ao invés de dois pipelines paralelos, temos apenas um, porém que consegue executar até cinco instruções por ciclo, pois o quarto estágio é mais lento, levando um ciclo para ser concluído, porém ele conta com cinco unidades funcionais. Apesar de não ser o dado mais relevante em um processador, é o número mais comum na divulgação e um grande erro de muitas pessoas na escolha de um computador, é olhar exclusivamente para este número. Estamos falando do clock, a frequência em que o processador trabalha, ou seja, quantas instruções, a CPU é capaz de processar por segundo. Basicamente um processador que tenha 3,2 GHz, é capaz de processar 3 bilhões e 200 milhões de instruções por segundo. Então para sabermos o quanto isso pode melhorar o desempenho do computador, a comparação tem que ser feita entre dois processadores da mesma família. Uma prática bastante comum entre gamers, é o overclocking, técnica utilizada pelos usuários, para aumentar a frequência definida pela fabricante, afim de obter ganho no na velocidade de processamento, porém com aumento do consumo de energia e maior geração de calor, portanto, há ganho de velocidade, não necessariamente de desempenho, caso seja considerado como tal, ganho de velocidade com economia de energia e menor geração de calor. Outra coisa que revolucionou a informática, foi a tecnologia multicore, introduzida no mercado de microprocessadores, com o Intel®Pentium®D. Como o nome sugere, temos mais de um núcleo, dentro de um mesmo processador, ou seja, temos mais de um processador dentro de um processador. Aumentando assim, significativamente a capacidade de processamento. Se formas tratar clock, que acabamos de falar, ao compararmos um processador com um único núcleo com um clock maior que um multicore, normalmente seu desempenho será menor. Isso tudo porque o número de instruções por clock, acaba sendo maior no multicore. Claro que devemos levar em conta também para este tipo de comparação, a tecnologia hyper-threading, que é capaz de pegar o espaço ocioso dentro do processador, durante a execução de uma instrução, e usá-lo como se fosse outro processador, executando mais instruções de forma paralela. Sendo assim, é como se um processador com 8 núcleos, tivesse oito, contribuindo grandemente para o desempenho. Também de grande importância no que diz respeito ao desempenho, são as memórias internas da CPU, as caches e os registradores. Nessas memórias, ficam armazenadas as instruções mais usadas pelo sistema e/ou as próximas instruções a serem executadas, fazendo assim, que o acessos as informações seja muito mais rápido e menos custoso ao sistema, uma vez que mesmo as melhores memórias RAM, não são tão rápidas e nem tão próximas de onde o processamentos é feito. Sendo assim, quanto maior e mais rápidas essas memórias internas, melhor o desempenho.
Compartilhar