SlideShare uma empresa Scribd logo
Benchmarking para
Sistemas de Alto Desempenho
Intel Software Conference – Maio, 2014
Igor Freitas
igor.freitas@intel.com
Agenda
2
 Principais conceitos em Benchmarking
 Metodologia
 Conclusões
Principais conceitos em Benchmarking
Nomenclatura p/ a Metodologia proposta
 Workload:
 Carga computacional submetida ao sistema. Tarefas, transações e dados processados em um período de
tempo
 Sistema:
 Componentes de Software (Sistema Operacional, Drivers e Aplicativos)
 Componentes de Hardware (Unidades de processamento, Arquitetura de Rede)
 Fatores:
 Parâmetros que variam e afetam diretamente a performance do sistema. Ex.: Inputs da aplicação definidos
pelo usuário.
 Métricas
 Critérios baseados em medidas computacionais para comparar a performance entre sistemas. Geralmente
baseadas em throughput, tempo de resposta e utilização do sistema (HW + SW).
 Métricas mais comuns:
– MIPS (Millions of Instructions per Second)
– CPI (Cycles per Instructions)
– MFLOPS (Millions of Floating Point Operations per second)
3
Principais conceitos em Benchmarking
Definições de Benchmarking / Benchmark
 Definição 1: Um ou mais workloads utilizados no processo de Benchmarking
 Exemplo: Caracterização do ambiente de extração e reserva de óleo e gás através de injeção
de CO², para que este seja modelado, simulado e analisado.
 Definição 2: Ferramentas de workloads sintéticos: EuroBen, HPCC, NAS Parallel
Benchmarks, SPEC.
 Exemplo: HPC Challenge Benchmark
 PTRANS : Estressa a comunicação entre cores (processadores) de um sistema para avaliar a
capacidade da rede.
 FFT : Mede o taxa (ratio) de precisão dupla (double) em cálculos de FFT (Fast Fourier
Transform) em uma dimensão.
 Definição 3: Método científico para testar e aprofundar o conhecimento sobre um
sistema complexo através de metodologias sistemáticas.
4
Principais conceitos em Benchmarking
 Objetivo do Benchmarking:
 Sistemas existentes:
Caracteriza-lo, identificar os hotspots (pontos de melhoria), medir sua performance,
testar workloads, obter uma medida de performance inicial para otimizações ou
comparações.
 Novos sistemas:
Caracterizar o problema a ser resolvido, criar workloads representativos, criar uma
medida de performance para otimizações ou comparações
5
6
Metodologia para
Benchmarking
Metodologia
 Benchmarking Plan:
 Definir os objetivos do projeto através da descrição de suas funcionalidades,
seleção de métricas e listagem dos parâmetros de entrada.
 Requirements Definition:
 Definir uma técnica de medição através dos fatores de estudo e definição dos
workloads. Importante: nesta fase é definida a complexidade do benchmarking.
 Benchmarking Execution:
 Criar os test cases, analisar e interpretar os resultados, apresentar as conclusões.
7
Metodologia
8
Metodologia
Técnicas de medição
9
Critério Analytical Modeling Simulation Measurement
Estágio (Sistema pronto,
protótipo, inexistente)
Indiferente Indiferente Protótipo
Tempo requerido Pequeno Médio Variado
Ferramentas Analistas Linguagens
Programação
Instrumentação
Precisão Baixa Moderada Variada
Facilidade em identificar
conclusões
Fácil Moderado Difícil
Custo Pequeno Médio Alto
Credibilidade dos
resultados
Baixo Médio Alto
Tipos de métricas
 Métricas definidas pelo usuário
 Métricas para profiling e otimização
 Tempo de execução é a métrica principal
Considerar a perspectiva do usuário
 Exemplos: em algumas simulações, a métrica utilizada pode ser “milhões de
células processadas por segundo”
– Neste caso, MIPS, CPI, latência de memória entre outras métricasnão são
relevantes
Metodologia
10
Definição das métricas podem gerar problemas
 Dependência entre Objetivos, Serviços e Métricas de Performance
 Não podemos melhorar uma métrica em detrimento de outra !
Metodologia
11
O desfio é otimizar o sistema de acordo com a prioridade
definida para as métricas, serviços e objetivos do projeto.
Cuidado na análise dos resultados
 Throuput: MIPS depende da arquitetura (CISC, RISC, MIC etc)
 Uso da CPU através de MPIS: processamento ou overhead de comunicação ?
 Workloads não-representativos: os testes devem utilizar inputs mais próximos
possíveis da aplicação real.
 Fatores significantes: A variação dos parâmetros do sistema (Fatores) influenciam
na performance, não podemos ignora-los no versionamento dos testes.
 Ignorar variação nos resultados: poucas medidas podem trazer falsas conclusões
Metodologia
12
Metodologia
13
Benchmarking Execution Phase
Analysis
Tree
Profiling &
Tuning
Regular
Performance
Regression Tests
Analyze & Interpret Data Present ResultsDesign Experiments
Timeline
Analysis
TopDown
Tree
Source
Analysis
...
WHAT and
HOW Analyze
Command Line
tools, GUI and
Script interaction
Summary
Window
Bottom Up
Pane
Timeline
Pane
Callstack
Pane
Top-down
Tree Pane
Conclusões
14
Benchmarking != Benchmark
Metodologia de Benchmarking:
 Conhecer o sistema (HW + SW)
 Implica no uso de Metodologia sistemática:
 Definir Objetivos
 Métricas de sucesso
 Métricas de profiling e tunning
 Workloads representativos
 Análise dos resultados
Intel® VTune™ Amplifier
 Ferramenta de apoio para a Metodologia de Benchmarking na fase de Execução
 Prepara e rodar testes
 Analisar e interpretar resultados
 Apresentação de resultados
Conclusões
15
[1] Technical Recomendations for Benchmarking, Freitas, I. J. F.; Intel Corporation, July 2013
[2] A systematic benchmarking approach for geologic CO2 injection and storage. Kolditz, O.; Bauer, S.; Beyer,
C.; Böttcher, N.; Dietrich, P.; Görke, U. J.; Kalbacher, T.;Park, C. H.; Sauer, U.; Schütze, C., ENVIRONMENTAL
EARTH SCIENCES; 67, 2; 613-632, Springer Science, 2012, ISSN: 1866-6280
[3] Simulation of Computer Architectures: Simulators, Benchmarks, Methodologies, and Recommendations.
Joshua J.; David J. Lilja. IEEE TRANSACTIONS ON COMPUTERS, VOL. 55, NO. 3, MARCH 2006
[4] Performance Evaluation of Intel Xeon ES-2600 Family Cluster Using Scientific and Engineering
Benchmarks, Pawel Gepner.; David L. Fraser.; Victor Gamayunov, 2012 2nd IEEE International Conference on
Parallel, Distributed and Grid Computing.
[5] Buzen, J. P. (1976). Fundamental Laws of Computer System Performance, Proc.
SIGMETRICS’76,Cambridge, MA, 200–210.
[6] Thermo-hydro-mechanical modeling of carbon dioxide injection for enhanced gas-recovery (CO2-EGR): a
benchmarking study for code comparison, Zhengmeng Hou.; Yang Gou.; Joshua Taron. Environ Earth Sci
(2012)
[7] Tianshi Chen; Yunji Chen; Qi Guo; Temam, O.; Yue Wu; Weiwu Hu, "Statistical performance comparisons of
computers," High Performance Computer Architecture (HPCA), 2012 IEEE 18th International Symposium on ,
vol., no., pp.1,12, 25-29 Feb. 2012 doi: 10.1109/HPCA.2012.6169043
[8] Art of Computer Systems Performance Analysis Techniques For Experimental Design
Measurements Simulation And Modeling, Raj Jain, Wiley Computer Publishing, John Wiley & Sons, Inc. ISBN:
0471503363 Pub Date: 05/01/91
[9] Performance Benchmark Test Disclosure at:
http://www.intel.com/content/www/us/en/benchmarks/benchmark.html. Accessed at 07/22/2013.
[10] Processor Benchmark Limitations at: http://www.intel.com/performance/ . Accessed at 07/22/2013.
Bibliografia
16
©2014, Intel Corporation. All rights reserved. Intel, the Intel logo, Intel Inside, Intel Xeon, and Intel Xeon Phi are trademarks of Intel Corporation in the U.S. and/or other countries. *Other names and brands may be claimed as the property of others.
17

Mais conteúdo relacionado

Destaque

Escreva sua App sem gastar energia, agora no KitKat
Escreva sua App sem gastar energia, agora no KitKatEscreva sua App sem gastar energia, agora no KitKat
Escreva sua App sem gastar energia, agora no KitKat
Intel Software Brasil
 
Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5
Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5
Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5Intel Software Brasil
 
Yocto - 7 masters
Yocto - 7 mastersYocto - 7 masters
Yocto - 7 masters
Intel Software Brasil
 
IoT FISL15
IoT FISL15IoT FISL15
Getting the maximum performance in distributed clusters Intel Cluster Studio XE
Getting the maximum performance in distributed clusters Intel Cluster Studio XEGetting the maximum performance in distributed clusters Intel Cluster Studio XE
Getting the maximum performance in distributed clusters Intel Cluster Studio XE
Intel Software Brasil
 
Identificando Hotspots e Intel® VTune™ Amplifier - Intel Software Conference
Identificando Hotspots e Intel® VTune™ Amplifier - Intel Software ConferenceIdentificando Hotspots e Intel® VTune™ Amplifier - Intel Software Conference
Identificando Hotspots e Intel® VTune™ Amplifier - Intel Software Conference
Intel Software Brasil
 
Vetorização e Otimização de Código - Intel Software Conference 2013
Vetorização e Otimização de Código - Intel Software Conference 2013Vetorização e Otimização de Código - Intel Software Conference 2013
Vetorização e Otimização de Código - Intel Software Conference 2013
Intel Software Brasil
 
Intel Technologies for High Performance Computing
Intel Technologies for High Performance ComputingIntel Technologies for High Performance Computing
Intel Technologies for High Performance Computing
Intel Software Brasil
 
Computação Paralela: Benefícios e Desafios - Intel Software Conference 2013
Computação Paralela: Benefícios e Desafios - Intel Software Conference 2013Computação Paralela: Benefícios e Desafios - Intel Software Conference 2013
Computação Paralela: Benefícios e Desafios - Intel Software Conference 2013
Intel Software Brasil
 
Intel® MPI Library e OpenMP* - Intel Software Conference 2013
Intel® MPI Library e OpenMP* - Intel Software Conference 2013Intel® MPI Library e OpenMP* - Intel Software Conference 2013
Intel® MPI Library e OpenMP* - Intel Software Conference 2013
Intel Software Brasil
 
Notes on NUMA architecture
Notes on NUMA architectureNotes on NUMA architecture
Notes on NUMA architecture
Intel Software Brasil
 
Indicadores Desempenho e Métricas em TI v29
Indicadores Desempenho e Métricas em TI v29Indicadores Desempenho e Métricas em TI v29
Indicadores Desempenho e Métricas em TI v29
Rildo (@rildosan) Santos
 
Methods and practices to analyze the performance of your application with Int...
Methods and practices to analyze the performance of your application with Int...Methods and practices to analyze the performance of your application with Int...
Methods and practices to analyze the performance of your application with Int...
Intel Software Brasil
 

Destaque (15)

Escreva sua App sem gastar energia, agora no KitKat
Escreva sua App sem gastar energia, agora no KitKatEscreva sua App sem gastar energia, agora no KitKat
Escreva sua App sem gastar energia, agora no KitKat
 
Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5
Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5
Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5
 
Yocto - 7 masters
Yocto - 7 mastersYocto - 7 masters
Yocto - 7 masters
 
IoT FISL15
IoT FISL15IoT FISL15
IoT FISL15
 
Html5 fisl15
Html5 fisl15Html5 fisl15
Html5 fisl15
 
Getting the maximum performance in distributed clusters Intel Cluster Studio XE
Getting the maximum performance in distributed clusters Intel Cluster Studio XEGetting the maximum performance in distributed clusters Intel Cluster Studio XE
Getting the maximum performance in distributed clusters Intel Cluster Studio XE
 
Identificando Hotspots e Intel® VTune™ Amplifier - Intel Software Conference
Identificando Hotspots e Intel® VTune™ Amplifier - Intel Software ConferenceIdentificando Hotspots e Intel® VTune™ Amplifier - Intel Software Conference
Identificando Hotspots e Intel® VTune™ Amplifier - Intel Software Conference
 
Vetorização e Otimização de Código - Intel Software Conference 2013
Vetorização e Otimização de Código - Intel Software Conference 2013Vetorização e Otimização de Código - Intel Software Conference 2013
Vetorização e Otimização de Código - Intel Software Conference 2013
 
Intel Technologies for High Performance Computing
Intel Technologies for High Performance ComputingIntel Technologies for High Performance Computing
Intel Technologies for High Performance Computing
 
Computação Paralela: Benefícios e Desafios - Intel Software Conference 2013
Computação Paralela: Benefícios e Desafios - Intel Software Conference 2013Computação Paralela: Benefícios e Desafios - Intel Software Conference 2013
Computação Paralela: Benefícios e Desafios - Intel Software Conference 2013
 
Intel® MPI Library e OpenMP* - Intel Software Conference 2013
Intel® MPI Library e OpenMP* - Intel Software Conference 2013Intel® MPI Library e OpenMP* - Intel Software Conference 2013
Intel® MPI Library e OpenMP* - Intel Software Conference 2013
 
Notes on NUMA architecture
Notes on NUMA architectureNotes on NUMA architecture
Notes on NUMA architecture
 
Indicadores Desempenho e Métricas em TI v29
Indicadores Desempenho e Métricas em TI v29Indicadores Desempenho e Métricas em TI v29
Indicadores Desempenho e Métricas em TI v29
 
Methods and practices to analyze the performance of your application with Int...
Methods and practices to analyze the performance of your application with Int...Methods and practices to analyze the performance of your application with Int...
Methods and practices to analyze the performance of your application with Int...
 
CV-LucianoPalma
CV-LucianoPalmaCV-LucianoPalma
CV-LucianoPalma
 

Semelhante a Benchmarking para sistemas de alto desempenho

Computacao
ComputacaoComputacao
Computacao
paola muniz
 
Medindo O Desempenho De Processadores
Medindo O Desempenho De ProcessadoresMedindo O Desempenho De Processadores
Medindo O Desempenho De Processadores
José Agripino Duarte da Silva
 
Wgp09 Apresentacao Italo
Wgp09   Apresentacao ItaloWgp09   Apresentacao Italo
Wgp09 Apresentacao Italo
Ítalo Brilhante
 
Planejamento projeto masiero
Planejamento projeto masieroPlanejamento projeto masiero
Planejamento projeto masiero
Maitsudá Matos
 
Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...
Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...
Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...
Marcelo Schumacher
 
Webshow - Automação Laboratorial I
Webshow - Automação Laboratorial IWebshow - Automação Laboratorial I
Webshow - Automação Laboratorial I
Katálysis Científica
 
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...Lenin Abadie
 
Teste de Software - Bluesoft Labs
Teste de Software - Bluesoft Labs Teste de Software - Bluesoft Labs
Teste de Software - Bluesoft Labs
Ricardo Machado
 
Aula3 TEES UFS: Engenharia de Requisitos
Aula3 TEES UFS: Engenharia de RequisitosAula3 TEES UFS: Engenharia de Requisitos
Aula3 TEES UFS: Engenharia de Requisitos
Rogerio P C do Nascimento
 
Introdução aos Testes de Desempenho
Introdução aos Testes de DesempenhoIntrodução aos Testes de Desempenho
Introdução aos Testes de Desempenho
Base2 Tecnologia
 
Metodologia de desenvolvimento de sistemas
Metodologia  de desenvolvimento de sistemasMetodologia  de desenvolvimento de sistemas
Metodologia de desenvolvimento de sistemasPriscila Stuani
 
Indicadores de políticas públicas e métricas de software: uma visão em paralelo
Indicadores de políticas públicas e métricas de software: uma visão em paraleloIndicadores de políticas públicas e métricas de software: uma visão em paralelo
Indicadores de políticas públicas e métricas de software: uma visão em paralelo
Roberto de Pinho
 
Testes de Software.ppt
Testes de Software.pptTestes de Software.ppt
Testes de Software.ppt
Bruno Zolotareff dos Santos
 
Aula Gestão de Projetos
Aula Gestão de ProjetosAula Gestão de Projetos
Aula Gestão de Projetos
Rudson Kiyoshi Souza Carvalho
 
Manutenção de Software
Manutenção de SoftwareManutenção de Software
Manutenção de SoftwareWagner Zaparoli
 
Rejuvenescimento Software
Rejuvenescimento SoftwareRejuvenescimento Software
Rejuvenescimento Software
Marcus Oliveira
 
Analise de Requisitos
Analise de RequisitosAnalise de Requisitos
Analise de Requisitoselliando dias
 
ybr789try
ybr789tryybr789try
ybr789try
teste
 
Testes de software
Testes de softwareTestes de software
Testes de software
teste
 

Semelhante a Benchmarking para sistemas de alto desempenho (20)

Computacao
ComputacaoComputacao
Computacao
 
Medindo O Desempenho De Processadores
Medindo O Desempenho De ProcessadoresMedindo O Desempenho De Processadores
Medindo O Desempenho De Processadores
 
Wgp09 Apresentacao Italo
Wgp09   Apresentacao ItaloWgp09   Apresentacao Italo
Wgp09 Apresentacao Italo
 
Planejamento projeto masiero
Planejamento projeto masieroPlanejamento projeto masiero
Planejamento projeto masiero
 
Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...
Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...
Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...
 
Webshow - Automação Laboratorial I
Webshow - Automação Laboratorial IWebshow - Automação Laboratorial I
Webshow - Automação Laboratorial I
 
Sino
SinoSino
Sino
 
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
 
Teste de Software - Bluesoft Labs
Teste de Software - Bluesoft Labs Teste de Software - Bluesoft Labs
Teste de Software - Bluesoft Labs
 
Aula3 TEES UFS: Engenharia de Requisitos
Aula3 TEES UFS: Engenharia de RequisitosAula3 TEES UFS: Engenharia de Requisitos
Aula3 TEES UFS: Engenharia de Requisitos
 
Introdução aos Testes de Desempenho
Introdução aos Testes de DesempenhoIntrodução aos Testes de Desempenho
Introdução aos Testes de Desempenho
 
Metodologia de desenvolvimento de sistemas
Metodologia  de desenvolvimento de sistemasMetodologia  de desenvolvimento de sistemas
Metodologia de desenvolvimento de sistemas
 
Indicadores de políticas públicas e métricas de software: uma visão em paralelo
Indicadores de políticas públicas e métricas de software: uma visão em paraleloIndicadores de políticas públicas e métricas de software: uma visão em paralelo
Indicadores de políticas públicas e métricas de software: uma visão em paralelo
 
Testes de Software.ppt
Testes de Software.pptTestes de Software.ppt
Testes de Software.ppt
 
Aula Gestão de Projetos
Aula Gestão de ProjetosAula Gestão de Projetos
Aula Gestão de Projetos
 
Manutenção de Software
Manutenção de SoftwareManutenção de Software
Manutenção de Software
 
Rejuvenescimento Software
Rejuvenescimento SoftwareRejuvenescimento Software
Rejuvenescimento Software
 
Analise de Requisitos
Analise de RequisitosAnalise de Requisitos
Analise de Requisitos
 
ybr789try
ybr789tryybr789try
ybr789try
 
Testes de software
Testes de softwareTestes de software
Testes de software
 

Mais de Intel Software Brasil

Desafios do Desenvolvimento Multiplataforma
Desafios do Desenvolvimento MultiplataformaDesafios do Desenvolvimento Multiplataforma
Desafios do Desenvolvimento Multiplataforma
Intel Software Brasil
 
Yocto no 1 IoT Day da Telefonica/Vivo
Yocto no 1 IoT Day da Telefonica/VivoYocto no 1 IoT Day da Telefonica/Vivo
Yocto no 1 IoT Day da Telefonica/Vivo
Intel Software Brasil
 
IoT TDC Floripa 2014
IoT TDC Floripa 2014IoT TDC Floripa 2014
IoT TDC Floripa 2014
Intel Software Brasil
 
Otávio Salvador - Yocto project reduzindo -time to market- do seu próximo pr...
Otávio Salvador - Yocto project  reduzindo -time to market- do seu próximo pr...Otávio Salvador - Yocto project  reduzindo -time to market- do seu próximo pr...
Otávio Salvador - Yocto project reduzindo -time to market- do seu próximo pr...
Intel Software Brasil
 
O uso de tecnologias Intel na implantação de sistemas de alto desempenho
O uso de tecnologias Intel na implantação de sistemas de alto desempenhoO uso de tecnologias Intel na implantação de sistemas de alto desempenho
O uso de tecnologias Intel na implantação de sistemas de alto desempenho
Intel Software Brasil
 
Escreva sua App Android sem gastar energia - Intel Sw Day
Escreva sua App Android sem gastar energia - Intel Sw DayEscreva sua App Android sem gastar energia - Intel Sw Day
Escreva sua App Android sem gastar energia - Intel Sw Day
Intel Software Brasil
 
Using multitouch and sensors in Java
Using multitouch and sensors in JavaUsing multitouch and sensors in Java
Using multitouch and sensors in JavaIntel Software Brasil
 
Entenda de onde vem toda a potência do Intel® Xeon Phi™
Entenda de onde vem toda a potência do Intel® Xeon Phi™ Entenda de onde vem toda a potência do Intel® Xeon Phi™
Entenda de onde vem toda a potência do Intel® Xeon Phi™
Intel Software Brasil
 
Across the Silicon Spectrum: Xeon Phi to Quark – Unleash the Performance in Y...
Across the Silicon Spectrum: Xeon Phi to Quark – Unleash the Performance in Y...Across the Silicon Spectrum: Xeon Phi to Quark – Unleash the Performance in Y...
Across the Silicon Spectrum: Xeon Phi to Quark – Unleash the Performance in Y...
Intel Software Brasil
 
Livros eletrônicos interativos com html5 e e pub3
Livros eletrônicos interativos com html5 e e pub3Livros eletrônicos interativos com html5 e e pub3
Livros eletrônicos interativos com html5 e e pub3
Intel Software Brasil
 
Intel XDK New - Intel Software Day 2013
Intel XDK New - Intel Software Day 2013Intel XDK New - Intel Software Day 2013
Intel XDK New - Intel Software Day 2013
Intel Software Brasil
 
Hackeando a Sala de Aula
Hackeando a Sala de AulaHackeando a Sala de Aula
Hackeando a Sala de Aula
Intel Software Brasil
 
Android Native Apps Hands On
Android Native Apps Hands OnAndroid Native Apps Hands On
Android Native Apps Hands On
Intel Software Brasil
 
Android Fat Binaries
Android Fat BinariesAndroid Fat Binaries
Android Fat Binaries
Intel Software Brasil
 
Android Native Apps Development
Android Native Apps DevelopmentAndroid Native Apps Development
Android Native Apps Development
Intel Software Brasil
 

Mais de Intel Software Brasil (16)

Desafios do Desenvolvimento Multiplataforma
Desafios do Desenvolvimento MultiplataformaDesafios do Desenvolvimento Multiplataforma
Desafios do Desenvolvimento Multiplataforma
 
Yocto no 1 IoT Day da Telefonica/Vivo
Yocto no 1 IoT Day da Telefonica/VivoYocto no 1 IoT Day da Telefonica/Vivo
Yocto no 1 IoT Day da Telefonica/Vivo
 
IoT TDC Floripa 2014
IoT TDC Floripa 2014IoT TDC Floripa 2014
IoT TDC Floripa 2014
 
Otávio Salvador - Yocto project reduzindo -time to market- do seu próximo pr...
Otávio Salvador - Yocto project  reduzindo -time to market- do seu próximo pr...Otávio Salvador - Yocto project  reduzindo -time to market- do seu próximo pr...
Otávio Salvador - Yocto project reduzindo -time to market- do seu próximo pr...
 
Html5 tdc floripa_2014
Html5 tdc floripa_2014Html5 tdc floripa_2014
Html5 tdc floripa_2014
 
O uso de tecnologias Intel na implantação de sistemas de alto desempenho
O uso de tecnologias Intel na implantação de sistemas de alto desempenhoO uso de tecnologias Intel na implantação de sistemas de alto desempenho
O uso de tecnologias Intel na implantação de sistemas de alto desempenho
 
Escreva sua App Android sem gastar energia - Intel Sw Day
Escreva sua App Android sem gastar energia - Intel Sw DayEscreva sua App Android sem gastar energia - Intel Sw Day
Escreva sua App Android sem gastar energia - Intel Sw Day
 
Using multitouch and sensors in Java
Using multitouch and sensors in JavaUsing multitouch and sensors in Java
Using multitouch and sensors in Java
 
Entenda de onde vem toda a potência do Intel® Xeon Phi™
Entenda de onde vem toda a potência do Intel® Xeon Phi™ Entenda de onde vem toda a potência do Intel® Xeon Phi™
Entenda de onde vem toda a potência do Intel® Xeon Phi™
 
Across the Silicon Spectrum: Xeon Phi to Quark – Unleash the Performance in Y...
Across the Silicon Spectrum: Xeon Phi to Quark – Unleash the Performance in Y...Across the Silicon Spectrum: Xeon Phi to Quark – Unleash the Performance in Y...
Across the Silicon Spectrum: Xeon Phi to Quark – Unleash the Performance in Y...
 
Livros eletrônicos interativos com html5 e e pub3
Livros eletrônicos interativos com html5 e e pub3Livros eletrônicos interativos com html5 e e pub3
Livros eletrônicos interativos com html5 e e pub3
 
Intel XDK New - Intel Software Day 2013
Intel XDK New - Intel Software Day 2013Intel XDK New - Intel Software Day 2013
Intel XDK New - Intel Software Day 2013
 
Hackeando a Sala de Aula
Hackeando a Sala de AulaHackeando a Sala de Aula
Hackeando a Sala de Aula
 
Android Native Apps Hands On
Android Native Apps Hands OnAndroid Native Apps Hands On
Android Native Apps Hands On
 
Android Fat Binaries
Android Fat BinariesAndroid Fat Binaries
Android Fat Binaries
 
Android Native Apps Development
Android Native Apps DevelopmentAndroid Native Apps Development
Android Native Apps Development
 

Benchmarking para sistemas de alto desempenho

  • 1. Benchmarking para Sistemas de Alto Desempenho Intel Software Conference – Maio, 2014 Igor Freitas igor.freitas@intel.com
  • 2. Agenda 2  Principais conceitos em Benchmarking  Metodologia  Conclusões
  • 3. Principais conceitos em Benchmarking Nomenclatura p/ a Metodologia proposta  Workload:  Carga computacional submetida ao sistema. Tarefas, transações e dados processados em um período de tempo  Sistema:  Componentes de Software (Sistema Operacional, Drivers e Aplicativos)  Componentes de Hardware (Unidades de processamento, Arquitetura de Rede)  Fatores:  Parâmetros que variam e afetam diretamente a performance do sistema. Ex.: Inputs da aplicação definidos pelo usuário.  Métricas  Critérios baseados em medidas computacionais para comparar a performance entre sistemas. Geralmente baseadas em throughput, tempo de resposta e utilização do sistema (HW + SW).  Métricas mais comuns: – MIPS (Millions of Instructions per Second) – CPI (Cycles per Instructions) – MFLOPS (Millions of Floating Point Operations per second) 3
  • 4. Principais conceitos em Benchmarking Definições de Benchmarking / Benchmark  Definição 1: Um ou mais workloads utilizados no processo de Benchmarking  Exemplo: Caracterização do ambiente de extração e reserva de óleo e gás através de injeção de CO², para que este seja modelado, simulado e analisado.  Definição 2: Ferramentas de workloads sintéticos: EuroBen, HPCC, NAS Parallel Benchmarks, SPEC.  Exemplo: HPC Challenge Benchmark  PTRANS : Estressa a comunicação entre cores (processadores) de um sistema para avaliar a capacidade da rede.  FFT : Mede o taxa (ratio) de precisão dupla (double) em cálculos de FFT (Fast Fourier Transform) em uma dimensão.  Definição 3: Método científico para testar e aprofundar o conhecimento sobre um sistema complexo através de metodologias sistemáticas. 4
  • 5. Principais conceitos em Benchmarking  Objetivo do Benchmarking:  Sistemas existentes: Caracteriza-lo, identificar os hotspots (pontos de melhoria), medir sua performance, testar workloads, obter uma medida de performance inicial para otimizações ou comparações.  Novos sistemas: Caracterizar o problema a ser resolvido, criar workloads representativos, criar uma medida de performance para otimizações ou comparações 5
  • 7. Metodologia  Benchmarking Plan:  Definir os objetivos do projeto através da descrição de suas funcionalidades, seleção de métricas e listagem dos parâmetros de entrada.  Requirements Definition:  Definir uma técnica de medição através dos fatores de estudo e definição dos workloads. Importante: nesta fase é definida a complexidade do benchmarking.  Benchmarking Execution:  Criar os test cases, analisar e interpretar os resultados, apresentar as conclusões. 7
  • 9. Metodologia Técnicas de medição 9 Critério Analytical Modeling Simulation Measurement Estágio (Sistema pronto, protótipo, inexistente) Indiferente Indiferente Protótipo Tempo requerido Pequeno Médio Variado Ferramentas Analistas Linguagens Programação Instrumentação Precisão Baixa Moderada Variada Facilidade em identificar conclusões Fácil Moderado Difícil Custo Pequeno Médio Alto Credibilidade dos resultados Baixo Médio Alto
  • 10. Tipos de métricas  Métricas definidas pelo usuário  Métricas para profiling e otimização  Tempo de execução é a métrica principal Considerar a perspectiva do usuário  Exemplos: em algumas simulações, a métrica utilizada pode ser “milhões de células processadas por segundo” – Neste caso, MIPS, CPI, latência de memória entre outras métricasnão são relevantes Metodologia 10
  • 11. Definição das métricas podem gerar problemas  Dependência entre Objetivos, Serviços e Métricas de Performance  Não podemos melhorar uma métrica em detrimento de outra ! Metodologia 11 O desfio é otimizar o sistema de acordo com a prioridade definida para as métricas, serviços e objetivos do projeto.
  • 12. Cuidado na análise dos resultados  Throuput: MIPS depende da arquitetura (CISC, RISC, MIC etc)  Uso da CPU através de MPIS: processamento ou overhead de comunicação ?  Workloads não-representativos: os testes devem utilizar inputs mais próximos possíveis da aplicação real.  Fatores significantes: A variação dos parâmetros do sistema (Fatores) influenciam na performance, não podemos ignora-los no versionamento dos testes.  Ignorar variação nos resultados: poucas medidas podem trazer falsas conclusões Metodologia 12
  • 13. Metodologia 13 Benchmarking Execution Phase Analysis Tree Profiling & Tuning Regular Performance Regression Tests Analyze & Interpret Data Present ResultsDesign Experiments Timeline Analysis TopDown Tree Source Analysis ... WHAT and HOW Analyze Command Line tools, GUI and Script interaction Summary Window Bottom Up Pane Timeline Pane Callstack Pane Top-down Tree Pane
  • 15. Benchmarking != Benchmark Metodologia de Benchmarking:  Conhecer o sistema (HW + SW)  Implica no uso de Metodologia sistemática:  Definir Objetivos  Métricas de sucesso  Métricas de profiling e tunning  Workloads representativos  Análise dos resultados Intel® VTune™ Amplifier  Ferramenta de apoio para a Metodologia de Benchmarking na fase de Execução  Prepara e rodar testes  Analisar e interpretar resultados  Apresentação de resultados Conclusões 15
  • 16. [1] Technical Recomendations for Benchmarking, Freitas, I. J. F.; Intel Corporation, July 2013 [2] A systematic benchmarking approach for geologic CO2 injection and storage. Kolditz, O.; Bauer, S.; Beyer, C.; Böttcher, N.; Dietrich, P.; Görke, U. J.; Kalbacher, T.;Park, C. H.; Sauer, U.; Schütze, C., ENVIRONMENTAL EARTH SCIENCES; 67, 2; 613-632, Springer Science, 2012, ISSN: 1866-6280 [3] Simulation of Computer Architectures: Simulators, Benchmarks, Methodologies, and Recommendations. Joshua J.; David J. Lilja. IEEE TRANSACTIONS ON COMPUTERS, VOL. 55, NO. 3, MARCH 2006 [4] Performance Evaluation of Intel Xeon ES-2600 Family Cluster Using Scientific and Engineering Benchmarks, Pawel Gepner.; David L. Fraser.; Victor Gamayunov, 2012 2nd IEEE International Conference on Parallel, Distributed and Grid Computing. [5] Buzen, J. P. (1976). Fundamental Laws of Computer System Performance, Proc. SIGMETRICS’76,Cambridge, MA, 200–210. [6] Thermo-hydro-mechanical modeling of carbon dioxide injection for enhanced gas-recovery (CO2-EGR): a benchmarking study for code comparison, Zhengmeng Hou.; Yang Gou.; Joshua Taron. Environ Earth Sci (2012) [7] Tianshi Chen; Yunji Chen; Qi Guo; Temam, O.; Yue Wu; Weiwu Hu, "Statistical performance comparisons of computers," High Performance Computer Architecture (HPCA), 2012 IEEE 18th International Symposium on , vol., no., pp.1,12, 25-29 Feb. 2012 doi: 10.1109/HPCA.2012.6169043 [8] Art of Computer Systems Performance Analysis Techniques For Experimental Design Measurements Simulation And Modeling, Raj Jain, Wiley Computer Publishing, John Wiley & Sons, Inc. ISBN: 0471503363 Pub Date: 05/01/91 [9] Performance Benchmark Test Disclosure at: http://www.intel.com/content/www/us/en/benchmarks/benchmark.html. Accessed at 07/22/2013. [10] Processor Benchmark Limitations at: http://www.intel.com/performance/ . Accessed at 07/22/2013. Bibliografia 16
  • 17. ©2014, Intel Corporation. All rights reserved. Intel, the Intel logo, Intel Inside, Intel Xeon, and Intel Xeon Phi are trademarks of Intel Corporation in the U.S. and/or other countries. *Other names and brands may be claimed as the property of others. 17