Resultados Benchmark » History » Version 20

Version 19 (Thiago Paiva, 22 Apr 2013 12:45) → Version 20/25 (Thiago Paiva, 25 Apr 2013 10:05)

h1. Resultados Benchmark

h2. Introdução

Com a aplicação da virtualização de hardware, mostrou-se necessário haver alguma forma de comparação entre o desempenho dessas máquinas com aquelas que não utilizam esse recurso. Isso é importante pois dessa forma pode-se mensurar qual é a sobrecarga que o sistema de virtualização provoca em condições correlatas e também para mensurar o desempenho de máquinas que só se tornaram possíveis com a virtualização.

Existem tipos diferentes de benchmark como o usado no TOP500 (top500.org) e no Graph500 (graph500.org). Cada um mensura características diferentes do computador.

h3. Benchmark

Benchmark é a normalização o ato de determinados procedimentos de forma padronizar a tornar possível a comparação entre eles.

são métodos
execução de avaliação do desempenho de computadores, determinadas operações em máquinas, sejam eles máquinas reais elas virtuais ou virtuais, reais, de forma que seja possível compará-los.

Para ta comparação de
a padronização das operações executada bem determinadas de forma a se conseguir mensurar o desempenho delas e tornar possível compará-los.

h3. LINPACK Benchmark

LINPACK Benchmark Linpack é um sistema de avaliação do poder computacional de computadores, utilizando ponto flutuante. Para isso, mede-se benchmark que usa a velocidade de resolução de um sistema linear problemas de equações n x n do tipo ''Ax = b''.

Será utilzado o HPLinpack que possibilita o teste da paralelização de computadores, em que o tamanho do problema pode ser definido de acordo com a disponibilidade de recursos de forma a fazer uso da plena capacidade das máquinas.

Os seguintes resultados são mostrados para cada teste:

'''R_max:''' a performance em Gflops/s para o maior problema executado
'''N_max:''' o tamanho do maior problema executado
'''N_{1/2}:''' o tamanho do problema para quando metade da '''R_max''' foi atingida.
'''R_peak:''' o pico teórico de performance.

h3. Parâmetros utilizados

Os parâmetros utilizados foram obtidos a partir do software [hpl-calculator | http://hpl-calculator.sourceforge.net/] e seguem as seguintes especificações:
* Número de nós equivale ao número de máquinas a serem utilizadas: 1 ou 4.
* Número de cores é o número de núcleos de processamento em cada um dos nós: 8 (sem hyper-thread) ou 16 (com hyper-thread).
* Velocidade por core: 2.67.
* Quantidade de memória por nó: 6GB.
* Operações por ciclo: 4.

Das indicações feitas pelo hpl-calculator, escolhemos:
* P x Q aproximadamente iguais
* NBs entre 96 e 256.
* N entre 80 e 94%

h3. Dos resultados:

Após realizar os testes com os valores escolhidos anteriormente, obtém-se:

* valor ótimo de N e NB a partir do pico real de performance.
* comparação direta entre os desempenhos das máquinas em condições correlacionadas:
** influência do recurso de Hyper-Threading
** influência da escolha da Matriz P x Q (quadrada e linear)
** máquina virtual x máquina real

álgebra linear.

h2. Nomenclatura

Cada teste é armazenado na máquina 00 em /opt/hpl/ utilizando um diretório cujo nome indica a qual teste pertence. Esse nome é composto por abreviações seguidas por valores:

* hw: número de máquinas reais
* vm: número de máquinas virtuais
* ht: hyper-thread ativo ou não.

h3. Exemplos

* hw4ht0: teste com quatro máquinas reais sem hyper-threading
* hw1ht1: teste com uma máquina real com hyper-threading
* mv1ht0: teste com uma máquina virtual sem hyper-threading



h2. Instruções para teste de "single"

* criar diretório e acessá-lo para receber informações do teste. O nome do diretório deve obedecer a nomenclatura estabelecida.
<pre>
~$ mkdir <nome>
~$ cd <nome>
</pre>

* copiar os arquivos necessários para o diretório recém criado
<pre>
~$ cp -r /opt/hpl/* .
</pre>

* modificar o arquivo "HPL.template" nos quesitos P e Q
<pre>
~$ vim hpl-files/HPL.template
</pre>

* editar o script "generateFile.pl" e alterar os parâmetros Ns e NBs
<pre>
~$ vim hpl-files/generateFile.pl
</pre>

* executar script "generateFile.pl" para gerar arquivos de entrada
<pre>
$ perl hpl-files/genereteFile.pl
</pre>

* modificar "runme-single.sh" no quesito número de cores (NUMBER_CORES)
<pre>
~$ vim hpl/runme-single.sh
</pre>

* executar runme-single.sh
<pre>
~$ hpl/runme-single.sh
</pre>

Testes:

[[Máquina Real com HT Vs Máquina Real sem HT]]

[[Matriz QxP quadrada vs Matriz QxP Linear]]

[[Busca pelo maior número de operações por segundo em uma unica máquina sem HT - Variação do uso de memória]]

[[Busca pelo maior número de operações por segundo em 4 máquinas sem HT - Variação do uso de memória]]