Avaliação de Desempenho e Potência
de Mecanismos de Comunicação
CMP502 – Sistemas Embarcados
Alexandre Irigon Gervini
Edgard de Faria Corrêa
1
LSE - Laboratório de Sistemas Embarcados
Abordagem
• Considerações:
• custo exclusivo da comunicação;
por enquanto
• desconsiderando overhead do sistema operacional
(escalonamento, chaveamento de contexto, alocacao de memória, etc.)
2
LSE - Laboratório de Sistemas Embarcados
Abordagem
• Transferência dos Dados:
•
1 mensagem de 1 byte;
• 128 mensagens de 1 byte;
• 256 mensagens de 1 byte;
•
1 mensagem de 32 bytes;
• 1 mensagem de 64 bytes;
•
2 mensagens de 32 bytes;
• 2 mensagens de 64 bytes;
•
4 mensagens de 32 bytes;
• 4 mensagens de 64 bytes;
•
8 mensagens de 32 bytes;
• 1 mensagem de 128 bytes;
• 2 mensagens de 128 bytes;
• 1 mensagem de 256 bytes.
LSE - Laboratório de Sistemas Embarcados
3
Mecanismos de Comunicação
• Memória Compartilhada:
• uso compartilhado de variáveis de memória.
• Troca de Mensagens:
• protocolo para controle do envio e recebimento das mensagens.
• DMA (acesso direto à memória):
• transferência, da memória principal, diretamente para o
dispositivo, sem utilizar a CPU .
4
LSE - Laboratório de Sistemas Embarcados
Metodologia
• Descrição em alto nível dos mecanismos:
• linguagem java.
• Síntese para o FemtoJava no SASHIMI:
• geração do VHDL e MIF.
• Simulação do consumo de potência e custo de comunicação:
• CAD (Caco Aided Design);
• potência medida em capacitância de gates;
• desempenho medido em número de ciclos.
5
LSE - Laboratório de Sistemas Embarcados
Resultados Obtidos
• Consumo de Potência - mensagens de 1 byte:
Potência
Memória Compartilhada
500.000.000
e Troca de Mensagens
450.000.000
400.000.000
350.000.000
300.000.000
mem1
250.000.000
msg1
200.000.000
150.000.000
100.000.000
50.000.000
0
1
128
256
6
LSE - Laboratório de Sistemas Embarcados
Resultados Obtidos
• Custo de Comunicação - mensagens de 1 byte:
Número de Ciclos
Memória Compartilhada
e Troca de Mensagens
120000
100000
80000
mem1
60000
msg1
40000
20000
0
1
128
256
7
LSE - Laboratório de Sistemas Embarcados
Resultados Obtidos
• Consumo de Potência - mensagens de 32 a 256 bytes:
180000000
Memória Compartilhada
160000000
140000000
120000000
100000000
mem32
mem64
mem128
mem256
80000000
mem32
60000000
40000000
20000000
0
1
32
64
128
256
8
LSE - Laboratório de Sistemas Embarcados
Resultados Obtidos
• Consumo de Potência - mensagens de 32 a 256 bytes:
Potência - Troca MSG
Troca de Mensagens
180.000.000
160.000.000
140.000.000
120.000.000
msg32
100.000.000
msg64
msg128
80.000.000
msg256
60.000.000
40.000.000
20.000.000
0
32
64
128
256
9
LSE - Laboratório de Sistemas Embarcados
Resultados Obtidos
• Custo de Comunicação - mensagens de 32 a 256 bytes:
# Ciclos - Memória Compartilhada
Memória Compartilhada
50000
45000
40000
35000
30000
msg32
msg64
25000
msg128
msg256
20000
15000
10000
5000
0
32
64
128
256
10
LSE - Laboratório de Sistemas Embarcados
Resultados Obtidos
• Custo de Comunicação - mensagens de 32 a 256 bytes:
# Ciclos - Troca MSG
Troca de Mensagens
45000
40000
35000
30000
msg32
25000
msg64
msg128
20000
msg256
15000
10000
5000
0
32
64
128
256
11
LSE - Laboratório de Sistemas Embarcados
Resultados Obtidos
MEMÓRIA COMPARTILHADA TROCA DE MENSAGENS
Potência
word(1)
x1
x 128
x 256
# Ciclos
Potência
# Ciclos
1.956.297
154.116.482
308.170.947
187
16573
33856
3.277.199
247.144.674
493.048.840
579
51925
103680
word(32) x 1
x2
x4
x8
20.835.173
42.355.409
85.857.042
174.218.944
4814
10518
22214
46348
23.149.037
46.124.193
69.881.477
117.397.313
5847
12219
18665
31557
word(64) x 1
x2
x4
39.857.712
81.978.387
166.432.358
9422
21020
44280
42.645.224
85.618.981
129.373.595
10927
22851
34849
word(128) x 1
x2
78.688.550
161.625.681
19412
42370
82.367.594
165.963.899
21582
44826
word(256) x 1
155.589.763
38580
156.377.867
38802
12
LSE - Laboratório de Sistemas Embarcados
Dificuldades Encontradas
• Limitações das ferramentas utilizadas:
 SASHIMI:
• não suporta orientação a objetos;
• não sintetiza primitivas do tipo break;
• não aceita retorno de vetores;
• não aceita matrizes.
 CAD:
• cálculo de blocos ?
13
LSE - Laboratório de Sistemas Embarcados
Pontos Pendentes
• Verificações dos resultados “fora da curva”;
• Levantamento dos dados do DMA;
• Finalização do artigo para o SEMISH.
14
LSE - Laboratório de Sistemas Embarcados
Próximas Etapas
• Utilizar modelos SW-HW e HW-HW.
• Avaliação do overhead do sistema operacional.
15
LSE - Laboratório de Sistemas Embarcados
Referências
[Knudsen 1999] P.V.Knudsen and J.Madsen, “Integrating communication protocol
selection with hardware/software codesign”. IEEE Transactions on
Computer-Aided Design of Integrated Circuits and Systems, Aug. 1999.
[Brunel 2000]
J-Y. Brunel et al., “COSY Communication IP’s”. Design Automation
Conference, 2000.
[Lahiri 2000]
K.Lahiri, A.Raghunathan and S.Dey, "Efficient Exploration of the
SoC Communication Architecture Design Space". International
Conference on Computer Aided Design, 2000.
[Drinic 2000]
M.Drinic et al, "Latency-Guided On-Chip Bus Network Design"
International Conference on Computer Aided Design, 2000.
16
LSE - Laboratório de Sistemas Embarcados
Download

Avaliação de desempenho, área e potência de mecanismos de