Controlador de ganho automático baseado numa plataforma FPGA
Desempenho em equipamentos informáticos
1. 1
Desempenho em equipamentos informáticos
Paulo Jorge Costa Lima
Engenharia Eletrotécnica e Computadores, IPCA
“O conhecimento passou a ser o principal fator de produção e
geração de riqueza.”
Bill Gates
RESUMO
Utilizando as ferramentas de Benchmarking, pretende-se avaliar e
comparar o desempenho de seis computadores relativamente aos
seus componentes individuais. Desta forma, é possível analisar a
avaliação generalizada em sistemas computacionais. Os
componentes individuais que servirão de comparativo serão a CPU,
memória, disco e placa gráfica. De modo a se efetuarem tais
análises comparativas ir-se-á recorrer a Softwares como o Sandra,
Dr. Hardware e 3DMark06. No final do trabalho, dever-se-á ser
capaz de definir qual o melhor tipo de computador para
determinada aplicação pretendida, bem como o que globalmente
apresenta melhor desempenho.
I. INTRODUÇÃO
Benchmarking é o ato de executar um programa de
computador, um conjunto de programas ou outras
operações, a fim de avaliar a performance relativa de um
objeto, normalmente executando uma série de testes
padrões e ensaios nele.
Normalmente, Benchmarking é associado com avaliação de
características de performance de um Hardware de
computador como, por exemplo, a performance da operação
de ponto flutuante de uma CPU, mas há circunstâncias em
que a técnica também é aplicável a Software.
O Benchmarking provém de um método de comparação da
performance de vários subsistemas de entre as diferentes
arquiteturas de chips e sistemas. É útil para o entendimento
de como o gerenciador do banco de dados responde sob a
variação de condições. Podem-se criar cenários que testam o
tratamento de deadlock, performance dos utilitários,
diferentes métodos de carregar dados, características da taxa
de transição quando mais usuários são adicionados e ainda o
efeito na aplicação usando uma nova versão do produto.
Com a evolução das arquiteturas de computadores, ficou
cada vez mais difícil comparar a performance de diferentes
sistemas de computação somente olhando suas
especificações. Por isso, testes foram desenvolvidos para
serem feitos em diferentes sistemas, permitindo que esses
resultados possam ser comparados entre as diferentes
arquiteturas. Por exemplo, enquanto os processadores
Pentium 4 geralmente operam a frequências de relógio mais
altas que os processadores AMD Athlon XP, isso não
necessariamente se traduz como maior poder computacional.
Em outras palavras, um processador AMD mais lento, quanto
a frequência de relógio, pode ter um desempenho tão bom
nos testes de Benchmarking quanto um processador Intel
operando a uma frequência mais elevada.
II. COMPONENTES
A unidade central de processamento (CPU), ou o processador,
é o componente que executa as instruções de um programa
de computador, e é o elemento primordial na execução das
funções de um computador. Este termo tem sido usado na
indústria de computadores pelo menos desde o início dos
anos 60. A forma, desenho e implementação da CPU têm
mudado dramaticamente desde os primeiros exemplos, mas
o seu funcionamento fundamental permanece o mesmo.
As primeiras CPU personalizadas foram concebidas como
parte de um computador maior. No entanto, este método
caro de fazer CPU personalizadas para uma determinada
aplicação rumou para o desenvolvimento de processadores
produzidos em massa que são feitos para um ou vários
propósitos. Esta tendência de padronização em geral surgiu
com os minicomputadores e o aparecimento dos transístores,
acelerando rapidamente com a popularização dos circuitos
integrados.
Os circuitos integrados têm permitido processadores cada vez
mais complexos para serem concebidos e fabricados em
tamanhos da ordem de nanômetros. Tanto a miniaturização
como a padronização dos processadores tem aumentado a
presença destes dispositivos digitais na vida moderna, muito
além da aplicação limitada dedicada a computadores. Os
microprocessadores modernos aparecem em tudo, desde
automóveis até celulares e brinquedos para crianças.
A memória são todos os dispositivos que permitem a um
computador guardar dados, de forma temporária ou
permanente.
Memória principal, também chamada de memória real, é
aquela que o processador pode endereçar diretamente, sem
a qual o computador não pode funcionar. Esta fornece
geralmente uma ponte para a memória secundária, mas a sua
função principal é a de conter a informação necessária para o
processador num determinado momento. Esta informação
pode ser, por exemplo, os programas em execução. Nesta
2. 2
categoria insere-se a memória RAM, memória ROM,
registadores e memória cache.
Memória secundária é um tipo de memória que não pode ser
endereçada diretamente. A informação precisa ser carregada
em memória principal antes de poder ser tratada pelo
processador. Não é estritamente necessária para o
funcionamento do computador. É, geralmente não volátil,
permitindo guardar os dados permanentemente. Inclui-se,
nesta categoria, os discos rígidos, CD, DVD e disquetes.
Memórias voláteis são as que requerem energia para manter
a informação armazenada. São fabricadas com base em duas
tecnologias: dinâmica e estática.
A memória dinâmica é a mais barata delas e, portanto, a mais
utilizada nos computadores, sendo aquelas que foram
popularizadas como memórias RAM. Este atributo vem do
nome inglês Random Acess Memory (memória de acesso
aleatório), que significa que os dados nela armazenada
podem ser acedidos a partir de qualquer endereço.
As memórias RAM contrapõem-se com as de acesso
sequencial, que exigem que qualquer acesso seja feito a
iniciar pelo primeiro endereço e, sequencialmente, vai
saltando de um em um até atingir o objetivo. Na realidade,
existem outras memórias de acesso aleatório nos
computadores, inclusive não voláteis, portanto, é importante
ter o conhecimento de que o nome RAM é apenas uma
popularização do nome da memória principal dos
computadores, utilizada para armazenar os programas e
dados no momento da execução.
A memória estática não necessita ser analisada ou
recarregada a cada momento. Fabricada com circuitos
eletrónicos conhecidos como latch, guardam a informação
por todo o tempo em que estejam a receber alimentação.
De um modo geral os computadores encontram-se limitados
nas quantidades de memória que podem conter. A esse limite
chamado de capacidade de expansão corresponde o valor
máximo de memória que um sistema específico pode conter.
Existem limitações quanto ao Hardware e ao Software.
No que respeita às limitações de Hardware, a quantidade de
memória é limitada pelo espaço de endereçamento do
processador. Um processador que utilize endereços de 32
bits, por exemplo, só poderá endereçar 2³² palavras de
memória. Esta é a razão pela qual os computadores que
utilizam processadores de 32 bits (x86) são limitados a 4GB
de memória.
Atualmente, os processadores de 64 bits gerenciam até
128GB de memória RAM e 16TB de memória virtual. O
sistema operacional também deve ser de 64 bits para
trabalhar com esses valores.
Um determinado Software (como o sistema operativo) pode
ter sido desenhado para permitir uma quantidade limitada de
memória.
O limite de capacidade de expansão de memórias RAM
também é limitado pela motherboard do computador, que
prevê um certo número de fendas para as cartas de memória,
bem como o chipset necessário para aceder à memória
principal.
Popularmente chamado de HD, o disco é a parte do
computador onde são armazenados os dados. O disco rígido é
uma memória não volátil, ou seja, as informações não são
perdidas quando o computador é desligado, sendo
considerado o principal meio de armazenamento de dados
em massa.
Por ser uma memória não volátil, é um sistema necessário
para se ter um meio de executar novamente programas e
carregar arquivos contendo os dados inseridos anteriormente
quando ligamos o computador. Nos sistemas operativos mais
recentes, ele é também utilizado para expandir a memória
RAM, através da gestão de memória virtual. Existem vários
tipos de discos rígidos diferentes: IDE/ATA, Serial ATA, SCSI,
etc.
Os discos magnéticos de um disco rígido são recobertos por
uma camada magnética extremamente fina. Na verdade,
quanto mais fina, for a camada de gravação, maior será sua
sensibilidade, e consequentemente maior será a densidade
de gravação permitida por ela. Poder-se-á, então, armazenar
mais dados num disco do mesmo tamanho, criando HD de
maior capacidade.
A placa gráfica é um componente de um computador que
envia sinais deste para o monitor, de forma que possam ser
apresentadas imagens ao utilizador. Normalmente possui
memória própria, com capacidade medida em octetos.
Nos computadores de baixo custo, as placas de vídeo estão
incorporadas na motherboard, não possuem memória
dedicada, e por isso utilizam a memória viva do sistema. A
isso denomina-se memória partilhada. Como a memória viva
do sistema é geralmente mais lenta do que as utilizadas pelos
fabricantes de placas de vídeo, e ainda dividem o barramento
com o processador e outros periféricos para acedê-la, este
método torna o sistema mais lento. Isso é notado
especialmente quando se usam recursos tridimensionais ou
de alta definição.
Em computadores mais sofisticados, o adaptador de vídeo
pode ter um processador próprio, o GPU ou acelerador
gráfico. Trata-se de um processador capaz de gerar imagens e
efeitos visuais tridimensionais, e acelerar os bidimensionais,
aliviando o trabalho do processador principal e gerando um
resultado final melhor e mais rápido. Esse processador utiliza
uma linguagem própria para descrição das imagens
tridimensionais, é interpretado e executado, gerando o
resultado final, que é a imagem da vista pelo observador
virtual.
3. 3
O resultado final normalmente é medido considerando-se o
número de vezes por segundo que o computador consegue
redesenhar uma cena, cuja unidade é o FPS (frames per
second).
A frequência de relógio indica a velocidade a que um
computador realiza suas operações mais básicas, como somar
dois números ou transferir o valor de um registo para outro.
Mede-se em ciclos por segundo (Hertz).
Os diferentes circuitos integrados de um computador podem
funcionar a diferentes frequências de relógio, de modo que
quando se usa o termo frequência de relógio aplicado a um
computador, geralmente entende-se que se refere à
velocidade de funcionamento do processador principal.
O barramento é um conjunto de linhas de comunicação que
permite a interligação entre dispositivos, como a CPU, a
memória e outros periféricos. Esses fios estão divididos em
três conjuntos: via de dados, via de endereços e via de
controlo.
Através da via de dados, processa-se o tráfego de dados,
enquanto através da via de endereços se processo o tráfego
de endereços. A via de controlo processa sinais que permitem
a sincronização das duas vias anteriores.
O desempenho do barramento é medido pela sua largura de
banda, que é a quantidade de bits que podem ser
transmitidos ao mesmo tempo, geralmente em potências de
2 (8, 16, 32, 64 bits).
III. DESCRIÇÃO
Para a realização dos testes de Benchmarking, foram
utilizados seis computadores com diferentes caraterísticas.
O computador C é referido como “Máquina personalizada”,
uma vez que este foi montado componente a componente
pelo seu utilizador. A referência da sua motherboard é ASUS
P5G41T-MLX.
IV. TESTES E RESULTADOS
Foram aplicados aos diferentes computadores, através do
Software Sandra, os seguintes testes: Processor Arithmetic,
Physical Discs, Memory Bandwidth e Cache and Memory.
Os tempos de resposta para cada teste variaram entre 1 e 2
minutos consoante o computador testado.
No final, os principais resultados foram agrupados na
seguinte tabela, que compara o desempenho entre os seis
computadores comparados.
De igual modo, desenvolveu-se um gráfico comparativo do
desempenho de modo a se obter uma maior compreensão
dos resultados obtidos.
O computador que de forma geral mais se destaca é a
Máquina personalizada, uma vez que apresenta os melhores
valores para todos os fatores de avaliação. Apenas não se
destaca no tempo de acesso ao disco, mas de referir que a
sua capacidade em disco é de longe muito superior a todas as
outras.
4. 4
O fato de a Máquina personalizada ser o computador que
apresenta os melhores resultados não é surpreendente, na
medida que é um computador montado componente a
componente de forma a obter maior performance global.
Contrariamente, o computador que apresenta os resultados
mais baixos é o Sony Vaio VGN-TX3XP, tratando-se de um
computador já bastante desatualizado comparativamente
com as outras máquinas testadas.
Em seguida, utilizou-se o Software Dr. Hardware e foram
aplicados os seguintes testes: CPU/Memory, Multi Processor,
Video, Harddisks e ASPI drives.
Os tempos de resposta para cada teste variaram entre 30 e
50 segundos consoante o computador testado.
No final, os principais resultados foram agrupados no
seguinte gráfico, que compara o desempenho entre os seis
computadores comparados.
Mais uma vez, o computador que se destaca sem surpresas é
a Máquina personalizada, exceto na componente gráfica
onde os melhores resultados são obtidos pelo Sony Vaio
VGN-FE31H e num patamar ainda superior o Dell Inspiron 14R
Laptop.
Os testes efetuados pelo Dr. Hardware reforçam basicamente
os já analisados pelo Sandra, não havendo elementos
antagónicos para análise. Com isto pode-se concluir que as
diversas ferramentas de Benchmarking são complementares,
ou seja, diferentes ferramentas não vão obter diferentes
resultados em equipamentos iguais.
Até este ponto, o computador mais atrativo pelo seu
desempenho global é a Máquina personalizada pois é a que
apresenta os melhores resultados, e para ser usada para fins
não específicos apresenta-se como a melhor escolha, se não
se atender a relações de qualidade preço, variáveis com que
não se está a entrar em jogo. O computador Sony Vaio VGN-
TX3XP apresenta-se na atualidade como a pior escolha de
todas as seis, mas sabe-se de antemão tratar-se de uma
máquina antiga que utiliza tecnologias ultrapassadas, não
devendo no entanto ser posta de parte para certas aplicações
menos exigentes a nível de CPU, gráfica e velocidade.
Por último, utilizou-se o Software 3DMark06.
Os tempos de resposta para cada teste variaram entre 25 e
30 minutos consoante o computador testado.
No final, os principais resultados foram agrupados no
seguinte gráfico, que compara o desempenho entre os cinco
computadores comparados.
O teste com o Software 3DMark06, apenas foi aplicado a
cinco computadores, uma vez que não foi possível executar o
teste no Sony Vaio VGN-TX3XP. Este computador devido à
sua fraca capacidade impossibilitou qualquer resultado,
gerando inclusive vários erros ao longo da tentativa de correr
o programa.
Apenas três computadores apresentaram resultados viáveis
neste teste. Os restantes não o conseguiram por
incapacidade das suas placas gráficas. Dentro dos
computadores que apresentaram resultados, destaca-se o
Dell Latitude E4300 com uma boa vantagem relativamente
aos outros em todos os aspetos comparativos.
Refira-se que a Máquina personalizada não foi concebida a
nível de gráfica, mas sim com outros intuitos, logo apesar do
seu poderio noutros campos, aqui ela não apresenta
resultados.
V. CONCLUSÕES
Após a realização deste trabalho, é possível fazer um balanço
e retirar algumas conclusões importantes.
Na prática, o Benchmarking é um processo onde se
comparam diversas máquinas de forma a se poder otimizar
um processo, neste caso a escolha dum equipamento ou que
componentes se devem atualizar numa máquina de forma a
melhorar o seu rendimento.
Para se fazer esses comparativos existem diversas
ferramentas que são complementares, apresentando
resultados aproximadamente semelhantes desde que
aplicados nas mesmas máquinas.
5. 5
Deve-se ter em conta que dois testes iguais aplicados na
mesma máquina vão obter resultados ligeiramente
diferentes, mas esses resultados nunca poderão ter uma
diferença numa ordem de grandeza demasiado elevada. Essas
diferenças devem-se aos programas em execução paralelos
que correm ao mesmo tempo do teste, ou seja, os recursos
de sistema que estão a ser consumidos paralelamente
enquanto decorrem os testes. Quanta mais memória estiver a
ser gasta por programas em espera pior resultados irá gerar
num teste à memória RAM por exemplo.
No caso dos nossos computadores em estudo se quiséssemos
fazer uma escolha, que é o objetivo do Benchmarking, se
quiséssemos um computador somente para executar
processos que envolvesse apenas velocidade de processador
e capacidade de disco, o computador a escolher seria a
Máquina personalizada. Se desejássemos uma máquina com
poder gráfica para fins visuais a escolha acertada seria o Dell
Inspiron 14R Laptop que por si só já apresenta resultados
muito bons, mas se excluirmos a componente gráfica não
consegue mesmo assim atingir os resultados da máquina
personalizada que é uma máquina feita à medida do
consumidor final para atingir determinados objetivos.
A máquina personalizada em título de curiosidade, foi
montada em ambiente informático recorrendo a processos
de melhoria de desempenho (Benchmarking).
VI. REFERÊNCIAS BIBLIOGRÁFICAS
[1] [Online]: http://www.pcworld.com/article/231738/sandra_2011_lite
[2] [Online]: http://www.dr-hardware.com
[3] [Online]: http://www.futuremark.com/benchmarks/legacy
[4] [Online]: http://www.wikipedia.org