• Sonuç bulunamadı

3.6. ARAŞTIRMANIN BULGULARI

3.6.1. Altınoluk’la İlgili Bulgular

3.6.1.3. Altınoluk’un İklimle İlgili Özellikleri

Para aferir o consumo de energia na plataforma HeMPS utilizam-se os dois modelos descritos nas Seções 6.1 e 6.2. Outros módulos do PE, como DMA ou NI, não são considerados na estimativa do consumo de energia, visto que o consumo de energia destes é constante e inferior ao do processador ou do roteador (valores de potência média em 65 nm para os módulos NI e DMA são 0,683 e 0,111 mW, respectivamente). São monitorados, em tempo de execução os seguintes parâmetros:

Quantidade de flits e pacotes recebidos em cada porta de cada roteador;

Quantidade de instruções de cada classe executadas pelo kernel e pelas tarefas;

• A frequência em que o PE opera em cada momento da simulação.

Estes parâmetros são armazenados em uma estrutura de dados acrescida ao ISS (do inglês Intruction Set Simulator) do processador Plasma. Esta estrutura de dados é construída todas as vezes em que o processador realizar uma instrução de SYSCALL. Tal estrutura é divida nos campos

descritos na

Tabela 7 abaixo.

Com base nesta estrutura de dados, aplicam-se os modelos de consumo do processador e do roteador após a simulação, a fim de se calcular o consumo de energia na plataforma HeMPS.

Como mencionado na Seção 6.3, no modelo de cálculo de energia abstraiu-se a influência de outros módulos do PE, como DMA ou NI. Entretanto, é importante se avaliar o consumo nos fios que interconectam os PEs, pois estes são uma componente que apresenta um consumo variável conforme o volume de dados transmitido.

Para se determinar o consumo em um determinado fio deve-se conhecer o comprimento do fio, sua capacitância, tensão do nível lógico ‘1’. Assume-se um tamanho do PE igual a 1 mm2 (resultado obtido com a síntese física do PE para tecnologia de 65 nm), tensão de alimentação igual a 1V, roteamento em metal 5 (0,2194 fF/micron), largura dos fios igual a 0,3 µm e distância entre fios igual a 0,3 µm. As equações 9 a 11 apresentam o consumo para um fio com estas características. Para determinar o consumo em um determinado fio não precisamos da noção de tempo, pois precisamos saber apenas o número de vezes em que as capacitâncias dos fios carregam e descarregam.

capacitância para fio de 1 mm em metal 5 = 219,4 fF (9)

energia no fio (Efio) = C*v2 = 219,4 fJ = 0,2194 pJ (10)

Tabela 7 - Estrutura do bloco de dados para a avaliação do consumo de energia na HeMPS, gerado durante uma execução.

Campo da Estrutura

de Dados Descrição do Campo

#BLOCK Delimitador do início de uma nova estrutura de dados

cycles_sim Tempo de execução, em ciclos de relógio, até o momento da gravação desta

estrutura de dados

freq_num_cpu Campo “numerador” do valor da frequência do PE

freq_den_cpu Campo “denominador” do valor da frequência do PE

arith_inst_kernel Número de instruções da categoria aritmética executadas pelo kernel

branch_inst_kernel Número de instruções da categoria saltos executadas pelo kernel load_inst_kernel Número de instruções da categoria load/store executadas pelo kernel

logical_inst_kernel Número de instruções da categoria lógica executadas pelo kernel

move_inst_kernel Número de instruções da categoria move executadas pelo kernel

shift_inst_kernel Número de instruções da categoria shift executadas pelo kernel

other_inst_kernel Número de instruções de outras categorias executadas pelo kernel

arith_inst_user Número de instruções da categoria aritmética executadas pelas tarefas

branch_inst_ user Número de instruções da categoria saltos executadas pelas tarefas

load_inst_ user Número de instruções da categoria load/store executadas pelas tarefas

logical_inst_ user Número de instruções da categoria lógica executadas pelas tarefas

move_inst_ user Número de instruções da categoria move executadas pelas tarefas

shift_inst_ user Número de instruções da categoria shift executadas pelas tarefas

other_inst_ user Número de instruções de outras categorias executadas pelas tarefas

east_flits Número de flits recebidos na porta leste do roteador deste PE

west_flits Número de flits recebidos na porta oeste do roteador deste PE

north_flits Número de flits recebidos na porta norte do roteador deste PE

south_flits Número de flits recebidos na porta sul do roteador deste PE

local_flits Número de flits recebidos na porta local do roteador deste PE

east_pckts Número de pacotes recebidos na porta leste do roteador deste PE

west_pckts Número de pacotes recebidos na porta oeste do roteador deste PE

north_pckts Número de pacotes recebidos na porta norte do roteador deste PE

south_pckts Número de pacotes recebidos na porta sul do roteador deste PE

local_pckts Número de pacotes recebidos na porta local do roteador deste PE

#END_BLOCK Delimitador de final da estrutura de dados

O consumo de energia de um dado enlace é obtido pela equação 12:

Pwire

port

=wire_energy×

flits

port

(12)

onde: wire_energy é a energia gasta para transmitir um flit no enlace; flitsport é a

quantidade de flits recebida em uma dada porta do roteador; α é a atividade de chaveamento do fio (assume-se um valor igual a 0,4, o que é bastante elevado, pois se considera que 40% dos bits estão chaveando).

Somente são consideradas no cálculo de energia dos fios as conexões entre roteadores, visto que a conexão entre o processador e o roteador (porta local) é muito curta e, sendo assim, possui um consumo de energia negligenciável. O cálculo do consumo de energia dos fios de conexão entre PEs é realizado através da soma da energia consumida em todos os enlaces do MPSoC.

Benzer Belgeler