SlideShare a Scribd company logo
1 of 36
Download to read offline
Identificando
Hotspots &
Intel® VTune™ Amplifier
Luciano Palma
Community Manager – Servers & HPC
Intel Software do Brasil
Luciano.Palma@intel.com
2
Metodologia de Análise de Desempenho
Uma proposta de abordagem para Otimização
Config. Sistema, BIOS,
Sistema Operacional,
I/O de Rede,
I/O de Disco,
Otimização do BD,
etc.
Projeto da Aplicação,
Otimização de Algoritmo,
Ajuste de Drivers,
Paralelismo
Cache,
Memória
Instruções SIMD,
Outros
Sistema
Aplicação
ProcessadorVTune™ Amplifier
XE pode ajudar
aqui!
A abordagem utilizada é
Top-Down
É necessário entender as
características da
aplicação e do sistema
¤ Utilização de ferramentas
adequadas em cada nível
Intel® VTune™ Amplifier XE
Performance Profiler
3
Gastando Tempo? Desperdiçando Tempo? Esperando demais?
Otimização de funções que
rodam mais tempo
Análise de call stacks
Análise de tempo no código-
fonte
Identificar cache misses,
branch mis-predictions e
outras ineficiências
Otimizar banda de memória
Analisar locks pelo
tempo de espera
Sinalização Vermelho/Verde
para uso de CPU
durante a espera
Windows & Linux
Baixo overhead
Sem necessidade de recompilação especial Claire Cates
Principal Developer, SAS Institute Inc.
“We improved the performance of the latest run 3
fold. We wouldn't have found the problem without
something like Intel® VTune™ Amplifier XE.”
Profiling Avançado para Desempenho Multicore com Escalabilidade
Onde minha aplicação está…
Perfis de Desempenho
Rápidos e Precisos
¤ Hotspots (Statistical call tree)
¤ Call counts (Estatístico)
¤ Coleta de Eventos de HW
Thread Profiling
¤ Visualização de interações
entre threads na timeline
¤ Balanceamento de cargas
Configuração Rápida
¤ Perfis de desempenho pré-definidos
¤ Uso de build normal de produção
4
Intel® VTune™ Amplifier XE
Otimizando Aplicações para Desempenho Multicore com Escalabilidade
Respostas com Agilidade
¤ Filtro de dados irrelevantes
¤ Visualização de resultados
no código fonte/assembly
Compatibilidade
¤ Microsoft, GCC,
compiladores Intel
¤ C/C++, Fortran, Assembly,
.NET, Java
¤ Últimos processadores Intel®
e compatíveis1
Windows or Linux
¤ Integraçãop com Visual Studio (Windows)
¤ GUI Standalone e linha de comando
¤ 32 e 64-bits
5
Intel® VTune™ Amplifier XE
Otimizando Aplicações para Desempenho Multicore com Escalabilidade
1 IA32 and Intel® 64 architectures.
Many features work with compatible processors.
Event based sampling requires a genuine Intel® Processor.
VTune™ Amplifier XE – Layout da GUI
6
7
Toolbar
VTune™ Amplifier XE – Layout da GUI
8
Navegador
de Projetos
VTune™ Amplifier XE – Layout da GUI
9
Tab de
Resultados
VTune™ Amplifier XE – Layout da GUI
10
Layout do Grid
Pull-down menu
de Agrupamento
VTune™ Amplifier XE – Layout da GUI
11
Painel da Stack
VTune™ Amplifier XE – Layout da GUI
12
Display da Timeline
VTune™ Amplifier XE – Layout da GUI
13
Tipo de Análise
da atual
execução
Viewpoint
utilizado na
exibição atual
VTune™ Amplifier XE – Layout da GUI
14
Tabs com
opções de
visualização do
resultado
VTune™ Amplifier XE – Layout da GUI
15
Área de filtros e
outras funções
VTune™ Amplifier XE – Layout da GUI
Duas formas de Coletar Dados
Intel® VTune™ Amplifier XE
16
Software Collector
Hotspots, Concurrency, Locks & Waits
Hardware Collector
Lightweight Hotspots, Advanced Analysis
Utiliza interrupções do SO Utiliza a Performance Monitoring Unit
(PMU) do processador
Coleta de uma única process tree Coleta de todo Sistema ou de uma única
process tree
~10ms de resolução (default) ~1ms de resolução (default)
(granularidade menor  coleta funções menores)
Coleta dados utilizando processadores
Intel® e compatíveis
Requer processador Intel® para a coleta
Call stacks mostram sequências de
chamadas
Novo: Coleta call stacks (opcional)
Funciona em ambientes virtuais Funciona em ambientes virtuais
suportados pela VM (ex: vSphere* 5.1)
Não requer driver específico Requer driver
Sem necessidade de recompilação especial - C, C++, C#, Fortran, Java, Assembly
17
Um extenso conjunto de dados sobre Desempenho
Intel® VTune™ Amplifier XE
Software Collector
Qualquer processador IA, virtual, sem driver
Hardware Collector
Maior resolução, menor overhead, todo sistema
Hotspots
Quais funções rodam por mais tempo?
Lightweight Hotspots
Quais funções rodam por mais tempo?
Onde usar inline? – Contagem estatística de
chamadas
Concurrency
Otimização do paralelismo
Cores sinalizam o número de núcleos em uso
General Exploration
Onde esta a maior oportunidade?
Cache misses? Branch mispredictions?
Locks and Waits
Otimização da principal causa de baixo
desempenho de threads – espera com
núcleos ociosos.
Advanced Analysis
Análise profunda para otimizar banda, cache
misses, contenções
de acesso, etc.
Perfis pré-definidos e fáceis de usar
Intel® VTune™ Amplifier XE
Selecione facilmente um Tipo de Análise
Clique em New Analysis
Selecione um Tipo de Análise
Hotspots
Quais funções rodam mais tempo?
Clique [+] para ver a call stack
Duplo-Clique para ver o código-fonte
Concurrency
As cores mostram o número de núcleos usados.
Adicione paralelismo aos hotspots com baixa
concorrência
Locks and Waits
Esperar por longos intervalos num lock é ruim
se os núcleos estão sendo sub-utilizados
durante a espera
18
1
2
19
Duplo-clique para
ver o código-fonte
Encontre Respostas com Agilidade
Intel® VTune™ Amplifier XE
Ajuste dos Grupos de Dados
… (Lista Parcial)
Filtro por Processo
& Outros Controles
Filtro por
Seleção da Timeline
(ou por Seleção do Grid)
Clique [+] para Call Stack
Oportunidades de Otimização
mostradas em rosa (com dicas)
20
Visualização de Dados do Perfil no Fonte / Assembly
Duplo-clique para Grid ou Timeline
Ver Fonte / Asm ou ambos
Rolagem rápida para hotspots. “Heat Map” da
barra de rolagem é resumo dos hotspots
Clique no jump para
rolagem do Asm
Navegação Rápida no Asm:
Selecione o fonte p/ destacar o Asm
Clique (dir.) para manual de refer. da instruçãoTempo CPU
21
A Timeline visualiza o comportamento das Threads
Intel® VTune™ Amplifier XE
Opcional: Uso da API para marcar frames e tarefas do usuário
Opcional: Adição de “marca” durante a coleta
CPU Time
Hovers:
Transitions
Hotspots Lightweight HotspotsLocks & Waits
22
Visualização de Problemas de Desempenho Paralelo
Busca de Padrões Comuns
Locks de Alta
Granularidade
(Coarse Grain)
Alta Contenção
gerada por Locks
Desbalanceamento
de Cargas
Baixa
Concorrência
http://software.intel.com/en-us/intel-vtune-amplifier-xe#pid-3659-760
Otimização de Software Paralelo
Porque é importante conhecer o Hardware
23
FRONT-END
BACK-END
Otimização de Software Paralelo
Porque é importante conhecer o Hardware
24
Situação Ideal:
Front-End consegue preencher todos os slots em cada ciclo de clock
Back-End consegue retirar µ-ops de cada slot em cada ciclo de clock
Otimização de Software Paralelo
Porque é importante conhecer o Hardware
25
Nem sempre acontece a situação ideal…
O VTune ajuda a entender o que está acontecendo
Cada núcleo (core) tem uma PMU que fornece informações
26
Interface de Linha de Comando
Automação de Análises
amplxe-cl é o comando CLI:
Windows: C:Program Files (x86)IntelVTune Amplifier XE
bin[32|64]amplxe-cl.exe
Linux: /opt/intel/vtune_amplifier_xe/bin[32|64]/amplxe-cl
Help:
amplxe-cl –help
É possível gerar a linha de
comando a partir da GUI
Excelente para análise de regressão – permite enviar o
arquivo de resultados para o Desenvolvedor
Resultados obtidos pela linha de commando podem ser analisados pela GUI
27
Coleta de Dados Remota
Analise de forma conveniente os dados coletados em sistemas remotos
1. Configure a coleta usando a GUI
localmente
2. Copie as instruções da linha de
commando para o Clipboard
3. Abra um shell remote para o
sistema de destino
4. Cole a linha de commando (Paste) e
execute a coleta
5. Copie os resultados para seu
sistema local
6. Abra o arquivo usando a GUI local
Sistema Local
VTune™ Amplifier XE
GUI completa
Sistema Remoto
Lightweight command
line collector
Copia a linha de comando
Copia os arquivos de
resultado
• “Performance footprint”
minimo durante a coleta
• Configuração simplificada
utilizando a GUI
• Fácil análise dos Resultados
28
Compare Resultados Rapidamente–Ordene por Diferenças
Intel® VTune™ Amplifier XE
Identifique rapidamente causas nas regressões
– Rodando uma análise diária por linha de commando
– Identificando responsáveis pelas principais funções,
para saber quem deve ser alertado
Compare 2 otimizações – O que melhorou?
Compare 2 sistemas – Por que aumentou (ou não) o desempenho?
29
Profiling para Java* com Baixo Overhead
Intel® VTune™ Amplifier XE 2013
Precisão & Baixo Overhead
– Amostragem rápida / não instrusiva
– Amostragem de Hardware ainda mais
rápida (agora com stacks opcionais)
– Perfis avançados exclusivos
(cache misses, banda…)
Versátil & Fácil de usar
– Múltiplas JVMs simultâneas
– Ambiente misto Java / C++ / Fortran
– Veja os resultados no código Java
Melhores Informações, Menor Overhead, Mais Fácil de usar
30
Aumente a Eficiência Energética
Intel® VTune™ Amplifier XE 2013
Otimização Tradicional
– Redução da utilização total de
recursos
– Atingida através de:
• Uso de novas instruções
• Aumento do Paralelismo
Nova Otimização
– Aumento do tempo ocioso sem
interrupção
– Atingida através de:
• Redução da frequência da atividade
• Consolidação de atividades
Minimize os “Wake-Ups” de Timers e Interrupções
31
Analise o Consumo de Energia da CPU
Intel® VTune™ Amplifier XE 2013
Minimize os “Wake-Ups”
para reduzir o consumo da CPU
Identifique as causas dos “Wake-ups”
• Timers disparados pela aplicação
• Interrupções mapeadas p/ níveis de
interrupção de Hardware
• Visualização da taxa de “Wake-Up”
Visualize o código fonte dos eventos
que “acordam” o processador
Visualize frequências da CPU por
núcleo (core)
• A frequência da CPU muda de acordo
com o nível de atividade
Somente para Linux
Selecione & filtre para ver um objeto “wake-up” único
Identifique a causa dos “Wake-Ups” analisando as call stacks dos timers
32
Disponível em Versões Windows & Linux
GUI Standalone, Linha de Comando, Integração com Visual Studio
Microsoft Windows*
– Windows XP*, Windows Vista*, Windows 7*
– Windows Server* 2003, 2008
– Microsoft Visual Studio* 2008, 2010 e 2012
– GUI Standalone e Linha de Comando
– IA32 e Intel® 64
Linux*
– RHEL*, Fedora*, SUSE*, CentOS*, Ubuntu*
– Outras distros também podem funcionar
– GUI Standalone e Linha de Comando
– IA32 e Intel® 64
Usuário Individual ou licenças “flutuantes”
33
Pacote Intel® Parallel Studio XE
Conjuntos de Ferramentas “All in one”
Crie código com velocidade e confiabilidade
Intel®
Cluster
Studio XE
Intel®
Parallel
Studio XE
Análise
● ● Intel® VTune™ Amplifier XE – Análise de Desempenho (Profiler)
● ● Intel® Inspector XE – Análise de Memória & Threads
● ● Static Analysis & Pointer Checker – Encontre erros de Código & Segurança
● ● Intel® Advisor XE – Assistente para a implementação de Threading
● Intel® Trace Analyzer & Collector – Ferramenta para Otimização de MPI
Compiladores&
Bibliotecas
● ● Intel® Compiler – Compilador Otimizado para C, C++ e Fortran
● ● Intel® Integrated Performance Primitives† - Otimizações para Mídia e Dados
● ● Intel® Threading Building Blocks† - Paralelismo de Aplicações com Alto Desempenho
● ● Intel® Math Kernel Library – Biblioteca Matemática de Alto Desempenho
● Intel® MPI Library – Messaging Flexível, Eficiente e Escalável
† Disponível somente para C e C++
Versões do Parallel Studio XE somente para C, C++ ou
somente para Fortran também estão disponíveis
34
Nota sobre Otimização
35
• INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR
OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND
CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED
WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A
PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.
• A "Mission Critical Application" is any application in which failure of the Intel Product could result, directly or indirectly, in personal injury or
death. SHOULD YOU PURCHASE OR USE INTEL'S PRODUCTS FOR ANY SUCH MISSION CRITICAL APPLICATION, YOU SHALL INDEMNIFY AND
HOLD INTEL AND ITS SUBSIDIARIES, SUBCONTRACTORS AND AFFILIATES, AND THE DIRECTORS, OFFICERS, AND EMPLOYEES OF EACH,
HARMLESS AGAINST ALL CLAIMS COSTS, DAMAGES, AND EXPENSES AND REASONABLE ATTORNEYS' FEES ARISING OUT OF, DIRECTLY OR
INDIRECTLY, ANY CLAIM OF PRODUCT LIABILITY, PERSONAL INJURY, OR DEATH ARISING IN ANY WAY OUT OF SUCH MISSION CRITICAL
APPLICATION, WHETHER OR NOT INTEL OR ITS SUBCONTRACTOR WAS NEGLIGENT IN THE DESIGN, MANUFACTURE, OR WARNING OF THE
INTEL PRODUCT OR ANY OF ITS PARTS.
• Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or
characteristics of any features or instructions marked "reserved" or "undefined". Intel reserves these for future definition and shall have no
responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The information here is subject to change
without notice. Do not finalize a design with this information.
• The products described in this document may contain design defects or errors known as errata which may cause the product to deviate from
published specifications. Current characterized errata are available on request.
• Intel processor numbers are not a measure of performance. Processor numbers differentiate features within each processor family, not across
different processor families. Go to: http://www.intel.com/products/processor_number.
• Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.
• Copies of documents which have an order number and are referenced in this document, or other Intel literature, may be obtained by calling 1-
800-548-4725, or go to: http://www.intel.com/design/literature.htm
• Intel, Core, Atom, Pentium, Intel inside, Sponsors of Tomorrow, Pentium, 386, 486, DX2 and the Intel logo are trademarks of Intel Corporation in
the United States and other countries.
• *Other names and brands may be claimed as the property of others.
• Copyright ©2012 Intel Corporation.
Legal Disclaimer
Identificando Hotspots e Intel® VTune™ Amplifier - Intel Software Conference

More Related Content

Viewers also liked

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 2013Intel 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 2013Intel Software Brasil
 
Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013
Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013
Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013Intel Software Brasil
 
Principais conceitos técnicas e modelos de programação paralela
Principais conceitos técnicas e modelos de programação paralelaPrincipais conceitos técnicas e modelos de programação paralela
Principais conceitos técnicas e modelos de programação paralelaIntel Software Brasil
 
Intel® VTune™ Amplifier - Intel Software Conference 2013
Intel® VTune™ Amplifier - Intel Software Conference 2013Intel® VTune™ Amplifier - Intel Software Conference 2013
Intel® VTune™ Amplifier - Intel Software Conference 2013Intel 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 2013Intel Software Brasil
 
Arquitetura do coprocessador Intel® Xeon Phi™ - Intel Software Conference 2013
Arquitetura do coprocessador Intel® Xeon Phi™ - Intel Software Conference 2013Arquitetura do coprocessador Intel® Xeon Phi™ - Intel Software Conference 2013
Arquitetura do coprocessador Intel® Xeon Phi™ - Intel Software Conference 2013Intel Software Brasil
 
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 KitKatIntel Software Brasil
 
Desafios do Desenvolvimento Multi-plataforma
Desafios do Desenvolvimento Multi-plataformaDesafios do Desenvolvimento Multi-plataforma
Desafios do Desenvolvimento Multi-plataformaIntel 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
 
Benchmarking para sistemas de alto desempenho
Benchmarking para sistemas de alto desempenhoBenchmarking para sistemas de alto desempenho
Benchmarking para sistemas de alto desempenhoIntel Software Brasil
 
Principais conceitos e técnicas em vetorização
Principais conceitos e técnicas em vetorizaçãoPrincipais conceitos e técnicas em vetorização
Principais conceitos e técnicas em vetorizaçãoIntel Software Brasil
 
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 XEIntel Software Brasil
 
Intel Technologies for High Performance Computing
Intel Technologies for High Performance ComputingIntel Technologies for High Performance Computing
Intel Technologies for High Performance ComputingIntel Software Brasil
 
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
 

Viewers also liked (20)

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
 
Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013
Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013
Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013
 
Principais conceitos técnicas e modelos de programação paralela
Principais conceitos técnicas e modelos de programação paralelaPrincipais conceitos técnicas e modelos de programação paralela
Principais conceitos técnicas e modelos de programação paralela
 
Intel® VTune™ Amplifier - Intel Software Conference 2013
Intel® VTune™ Amplifier - Intel Software Conference 2013Intel® VTune™ Amplifier - Intel Software Conference 2013
Intel® VTune™ Amplifier - Intel Software Conference 2013
 
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
 
Arquitetura do coprocessador Intel® Xeon Phi™ - Intel Software Conference 2013
Arquitetura do coprocessador Intel® Xeon Phi™ - Intel Software Conference 2013Arquitetura do coprocessador Intel® Xeon Phi™ - Intel Software Conference 2013
Arquitetura do coprocessador Intel® Xeon Phi™ - Intel Software Conference 2013
 
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
 
IoT FISL15
IoT FISL15IoT FISL15
IoT FISL15
 
Intel tools to optimize HPC systems
Intel tools to optimize HPC systemsIntel tools to optimize HPC systems
Intel tools to optimize HPC systems
 
Html5 fisl15
Html5 fisl15Html5 fisl15
Html5 fisl15
 
Yocto - 7 masters
Yocto - 7 mastersYocto - 7 masters
Yocto - 7 masters
 
Desafios do Desenvolvimento Multi-plataforma
Desafios do Desenvolvimento Multi-plataformaDesafios do Desenvolvimento Multi-plataforma
Desafios do Desenvolvimento Multi-plataforma
 
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
 
Benchmarking para sistemas de alto desempenho
Benchmarking para sistemas de alto desempenhoBenchmarking para sistemas de alto desempenho
Benchmarking para sistemas de alto desempenho
 
Principais conceitos e técnicas em vetorização
Principais conceitos e técnicas em vetorizaçãoPrincipais conceitos e técnicas em vetorização
Principais conceitos e técnicas em vetorização
 
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 Technologies for High Performance Computing
Intel Technologies for High Performance ComputingIntel Technologies for High Performance Computing
Intel Technologies for High Performance Computing
 
Notes on NUMA architecture
Notes on NUMA architectureNotes on NUMA architecture
Notes on NUMA architecture
 
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...
 

Similar to Identificando Hotspots e Intel® VTune™ Amplifier - Intel Software Conference

TDC2016SP - Trilha BigData
TDC2016SP - Trilha BigDataTDC2016SP - Trilha BigData
TDC2016SP - Trilha BigDatatdc-globalcode
 
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!Intel Software Brasil
 
PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoFabio Telles Rodriguez
 
Amazon EC2 boas praticas e otimizações de desempenho
Amazon EC2 boas praticas e otimizações de desempenhoAmazon EC2 boas praticas e otimizações de desempenho
Amazon EC2 boas praticas e otimizações de desempenhoAmazon Web Services LATAM
 
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)Leinylson Fontinele
 
parte2 fundamentos de arquitetura 1 e 2 pdf
parte2 fundamentos de arquitetura 1 e 2 pdfparte2 fundamentos de arquitetura 1 e 2 pdf
parte2 fundamentos de arquitetura 1 e 2 pdfAriclenesKinkela
 
Computação de Alto Desempenho com PS3
Computação de Alto Desempenho com PS3Computação de Alto Desempenho com PS3
Computação de Alto Desempenho com PS3Orlando Junior
 
Virtualização de Banco de Dados por Bruno Domingues
Virtualização de Banco de Dados por Bruno DominguesVirtualização de Banco de Dados por Bruno Domingues
Virtualização de Banco de Dados por Bruno DominguesJoao Galdino Mello de Souza
 
TechEd 2010: SQL Server com Foco em Diagnóstico de Desempenho
TechEd 2010: SQL Server com Foco em Diagnóstico de DesempenhoTechEd 2010: SQL Server com Foco em Diagnóstico de Desempenho
TechEd 2010: SQL Server com Foco em Diagnóstico de DesempenhoFabrício Catae
 
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...iMasters
 
Hardware apresentação 5 - cpu e sockets
Hardware   apresentação 5 - cpu e socketsHardware   apresentação 5 - cpu e sockets
Hardware apresentação 5 - cpu e socketsLuiz Pereira de Souza
 
Hierarquia dos Processadores da Intel.pptx
Hierarquia dos Processadores da Intel.pptxHierarquia dos Processadores da Intel.pptx
Hierarquia dos Processadores da Intel.pptxOsvaldoJooNhabete
 
Microarquitetura Intel Core Duo
Microarquitetura Intel Core DuoMicroarquitetura Intel Core Duo
Microarquitetura Intel Core DuoSamuel Bié
 
Unidade 2.1.4 Cpu
Unidade 2.1.4   CpuUnidade 2.1.4   Cpu
Unidade 2.1.4 Cpuguest18dcd9
 
Geração Automática de Autómatos Celulares para FPGA
Geração Automática de Autómatos Celulares para FPGAGeração Automática de Autómatos Celulares para FPGA
Geração Automática de Autómatos Celulares para FPGAAndré Costa Lima
 
Z13 x zEC12: O que esperar? - por Luiz Carlos Orsoni
Z13 x zEC12: O que esperar? - por Luiz Carlos OrsoniZ13 x zEC12: O que esperar? - por Luiz Carlos Orsoni
Z13 x zEC12: O que esperar? - por Luiz Carlos OrsoniJoao Galdino Mello de Souza
 
Monitoracao Inteligente na Globo.com
Monitoracao Inteligente na Globo.comMonitoracao Inteligente na Globo.com
Monitoracao Inteligente na Globo.comDenis Vieira
 
Apostila de montagem e manutenção de computadores emi mario gurgel
Apostila de montagem e manutenção de computadores emi mario gurgelApostila de montagem e manutenção de computadores emi mario gurgel
Apostila de montagem e manutenção de computadores emi mario gurgelPablo Mariano
 
Desafios no dimensionamento de capacidade em ambiente Mainframe por Fernando ...
Desafios no dimensionamento de capacidade em ambiente Mainframe por Fernando ...Desafios no dimensionamento de capacidade em ambiente Mainframe por Fernando ...
Desafios no dimensionamento de capacidade em ambiente Mainframe por Fernando ...Joao Galdino Mello de Souza
 

Similar to Identificando Hotspots e Intel® VTune™ Amplifier - Intel Software Conference (20)

TDC2016SP - Trilha BigData
TDC2016SP - Trilha BigDataTDC2016SP - Trilha BigData
TDC2016SP - Trilha BigData
 
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
 
PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardo
 
Amazon EC2 boas praticas e otimizações de desempenho
Amazon EC2 boas praticas e otimizações de desempenhoAmazon EC2 boas praticas e otimizações de desempenho
Amazon EC2 boas praticas e otimizações de desempenho
 
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
 
parte2 fundamentos de arquitetura 1 e 2 pdf
parte2 fundamentos de arquitetura 1 e 2 pdfparte2 fundamentos de arquitetura 1 e 2 pdf
parte2 fundamentos de arquitetura 1 e 2 pdf
 
Computação de Alto Desempenho com PS3
Computação de Alto Desempenho com PS3Computação de Alto Desempenho com PS3
Computação de Alto Desempenho com PS3
 
Virtualização de Banco de Dados por Bruno Domingues
Virtualização de Banco de Dados por Bruno DominguesVirtualização de Banco de Dados por Bruno Domingues
Virtualização de Banco de Dados por Bruno Domingues
 
TechEd 2010: SQL Server com Foco em Diagnóstico de Desempenho
TechEd 2010: SQL Server com Foco em Diagnóstico de DesempenhoTechEd 2010: SQL Server com Foco em Diagnóstico de Desempenho
TechEd 2010: SQL Server com Foco em Diagnóstico de Desempenho
 
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
 
Hardware apresentação 5 - cpu e sockets
Hardware   apresentação 5 - cpu e socketsHardware   apresentação 5 - cpu e sockets
Hardware apresentação 5 - cpu e sockets
 
Hierarquia dos Processadores da Intel.pptx
Hierarquia dos Processadores da Intel.pptxHierarquia dos Processadores da Intel.pptx
Hierarquia dos Processadores da Intel.pptx
 
Microarquitetura Intel Core Duo
Microarquitetura Intel Core DuoMicroarquitetura Intel Core Duo
Microarquitetura Intel Core Duo
 
Unidade 2.1.4 Cpu
Unidade 2.1.4   CpuUnidade 2.1.4   Cpu
Unidade 2.1.4 Cpu
 
Geração Automática de Autómatos Celulares para FPGA
Geração Automática de Autómatos Celulares para FPGAGeração Automática de Autómatos Celulares para FPGA
Geração Automática de Autómatos Celulares para FPGA
 
Z13 x zEC12: O que esperar? - por Luiz Carlos Orsoni
Z13 x zEC12: O que esperar? - por Luiz Carlos OrsoniZ13 x zEC12: O que esperar? - por Luiz Carlos Orsoni
Z13 x zEC12: O que esperar? - por Luiz Carlos Orsoni
 
Monitoracao Inteligente na Globo.com
Monitoracao Inteligente na Globo.comMonitoracao Inteligente na Globo.com
Monitoracao Inteligente na Globo.com
 
J Boss Drools
J Boss DroolsJ Boss Drools
J Boss Drools
 
Apostila de montagem e manutenção de computadores emi mario gurgel
Apostila de montagem e manutenção de computadores emi mario gurgelApostila de montagem e manutenção de computadores emi mario gurgel
Apostila de montagem e manutenção de computadores emi mario gurgel
 
Desafios no dimensionamento de capacidade em ambiente Mainframe por Fernando ...
Desafios no dimensionamento de capacidade em ambiente Mainframe por Fernando ...Desafios no dimensionamento de capacidade em ambiente Mainframe por Fernando ...
Desafios no dimensionamento de capacidade em ambiente Mainframe por Fernando ...
 

More from Intel Software Brasil

Desafios do Desenvolvimento Multiplataforma
Desafios do Desenvolvimento MultiplataformaDesafios do Desenvolvimento Multiplataforma
Desafios do Desenvolvimento MultiplataformaIntel 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/VivoIntel 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 desempenhoIntel 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 DayIntel 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 pub3Intel 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 2013Intel Software Brasil
 

More from Intel Software Brasil (15)

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
 

Identificando Hotspots e Intel® VTune™ Amplifier - Intel Software Conference

  • 1. Identificando Hotspots & Intel® VTune™ Amplifier Luciano Palma Community Manager – Servers & HPC Intel Software do Brasil Luciano.Palma@intel.com
  • 2. 2 Metodologia de Análise de Desempenho Uma proposta de abordagem para Otimização Config. Sistema, BIOS, Sistema Operacional, I/O de Rede, I/O de Disco, Otimização do BD, etc. Projeto da Aplicação, Otimização de Algoritmo, Ajuste de Drivers, Paralelismo Cache, Memória Instruções SIMD, Outros Sistema Aplicação ProcessadorVTune™ Amplifier XE pode ajudar aqui! A abordagem utilizada é Top-Down É necessário entender as características da aplicação e do sistema ¤ Utilização de ferramentas adequadas em cada nível
  • 3. Intel® VTune™ Amplifier XE Performance Profiler 3 Gastando Tempo? Desperdiçando Tempo? Esperando demais? Otimização de funções que rodam mais tempo Análise de call stacks Análise de tempo no código- fonte Identificar cache misses, branch mis-predictions e outras ineficiências Otimizar banda de memória Analisar locks pelo tempo de espera Sinalização Vermelho/Verde para uso de CPU durante a espera Windows & Linux Baixo overhead Sem necessidade de recompilação especial Claire Cates Principal Developer, SAS Institute Inc. “We improved the performance of the latest run 3 fold. We wouldn't have found the problem without something like Intel® VTune™ Amplifier XE.” Profiling Avançado para Desempenho Multicore com Escalabilidade Onde minha aplicação está…
  • 4. Perfis de Desempenho Rápidos e Precisos ¤ Hotspots (Statistical call tree) ¤ Call counts (Estatístico) ¤ Coleta de Eventos de HW Thread Profiling ¤ Visualização de interações entre threads na timeline ¤ Balanceamento de cargas Configuração Rápida ¤ Perfis de desempenho pré-definidos ¤ Uso de build normal de produção 4 Intel® VTune™ Amplifier XE Otimizando Aplicações para Desempenho Multicore com Escalabilidade
  • 5. Respostas com Agilidade ¤ Filtro de dados irrelevantes ¤ Visualização de resultados no código fonte/assembly Compatibilidade ¤ Microsoft, GCC, compiladores Intel ¤ C/C++, Fortran, Assembly, .NET, Java ¤ Últimos processadores Intel® e compatíveis1 Windows or Linux ¤ Integraçãop com Visual Studio (Windows) ¤ GUI Standalone e linha de comando ¤ 32 e 64-bits 5 Intel® VTune™ Amplifier XE Otimizando Aplicações para Desempenho Multicore com Escalabilidade 1 IA32 and Intel® 64 architectures. Many features work with compatible processors. Event based sampling requires a genuine Intel® Processor.
  • 6. VTune™ Amplifier XE – Layout da GUI 6
  • 10. 10 Layout do Grid Pull-down menu de Agrupamento VTune™ Amplifier XE – Layout da GUI
  • 11. 11 Painel da Stack VTune™ Amplifier XE – Layout da GUI
  • 12. 12 Display da Timeline VTune™ Amplifier XE – Layout da GUI
  • 13. 13 Tipo de Análise da atual execução Viewpoint utilizado na exibição atual VTune™ Amplifier XE – Layout da GUI
  • 14. 14 Tabs com opções de visualização do resultado VTune™ Amplifier XE – Layout da GUI
  • 15. 15 Área de filtros e outras funções VTune™ Amplifier XE – Layout da GUI
  • 16. Duas formas de Coletar Dados Intel® VTune™ Amplifier XE 16 Software Collector Hotspots, Concurrency, Locks & Waits Hardware Collector Lightweight Hotspots, Advanced Analysis Utiliza interrupções do SO Utiliza a Performance Monitoring Unit (PMU) do processador Coleta de uma única process tree Coleta de todo Sistema ou de uma única process tree ~10ms de resolução (default) ~1ms de resolução (default) (granularidade menor  coleta funções menores) Coleta dados utilizando processadores Intel® e compatíveis Requer processador Intel® para a coleta Call stacks mostram sequências de chamadas Novo: Coleta call stacks (opcional) Funciona em ambientes virtuais Funciona em ambientes virtuais suportados pela VM (ex: vSphere* 5.1) Não requer driver específico Requer driver Sem necessidade de recompilação especial - C, C++, C#, Fortran, Java, Assembly
  • 17. 17 Um extenso conjunto de dados sobre Desempenho Intel® VTune™ Amplifier XE Software Collector Qualquer processador IA, virtual, sem driver Hardware Collector Maior resolução, menor overhead, todo sistema Hotspots Quais funções rodam por mais tempo? Lightweight Hotspots Quais funções rodam por mais tempo? Onde usar inline? – Contagem estatística de chamadas Concurrency Otimização do paralelismo Cores sinalizam o número de núcleos em uso General Exploration Onde esta a maior oportunidade? Cache misses? Branch mispredictions? Locks and Waits Otimização da principal causa de baixo desempenho de threads – espera com núcleos ociosos. Advanced Analysis Análise profunda para otimizar banda, cache misses, contenções de acesso, etc.
  • 18. Perfis pré-definidos e fáceis de usar Intel® VTune™ Amplifier XE Selecione facilmente um Tipo de Análise Clique em New Analysis Selecione um Tipo de Análise Hotspots Quais funções rodam mais tempo? Clique [+] para ver a call stack Duplo-Clique para ver o código-fonte Concurrency As cores mostram o número de núcleos usados. Adicione paralelismo aos hotspots com baixa concorrência Locks and Waits Esperar por longos intervalos num lock é ruim se os núcleos estão sendo sub-utilizados durante a espera 18 1 2
  • 19. 19 Duplo-clique para ver o código-fonte Encontre Respostas com Agilidade Intel® VTune™ Amplifier XE Ajuste dos Grupos de Dados … (Lista Parcial) Filtro por Processo & Outros Controles Filtro por Seleção da Timeline (ou por Seleção do Grid) Clique [+] para Call Stack Oportunidades de Otimização mostradas em rosa (com dicas)
  • 20. 20 Visualização de Dados do Perfil no Fonte / Assembly Duplo-clique para Grid ou Timeline Ver Fonte / Asm ou ambos Rolagem rápida para hotspots. “Heat Map” da barra de rolagem é resumo dos hotspots Clique no jump para rolagem do Asm Navegação Rápida no Asm: Selecione o fonte p/ destacar o Asm Clique (dir.) para manual de refer. da instruçãoTempo CPU
  • 21. 21 A Timeline visualiza o comportamento das Threads Intel® VTune™ Amplifier XE Opcional: Uso da API para marcar frames e tarefas do usuário Opcional: Adição de “marca” durante a coleta CPU Time Hovers: Transitions Hotspots Lightweight HotspotsLocks & Waits
  • 22. 22 Visualização de Problemas de Desempenho Paralelo Busca de Padrões Comuns Locks de Alta Granularidade (Coarse Grain) Alta Contenção gerada por Locks Desbalanceamento de Cargas Baixa Concorrência http://software.intel.com/en-us/intel-vtune-amplifier-xe#pid-3659-760
  • 23. Otimização de Software Paralelo Porque é importante conhecer o Hardware 23 FRONT-END BACK-END
  • 24. Otimização de Software Paralelo Porque é importante conhecer o Hardware 24 Situação Ideal: Front-End consegue preencher todos os slots em cada ciclo de clock Back-End consegue retirar µ-ops de cada slot em cada ciclo de clock
  • 25. Otimização de Software Paralelo Porque é importante conhecer o Hardware 25 Nem sempre acontece a situação ideal… O VTune ajuda a entender o que está acontecendo Cada núcleo (core) tem uma PMU que fornece informações
  • 26. 26 Interface de Linha de Comando Automação de Análises amplxe-cl é o comando CLI: Windows: C:Program Files (x86)IntelVTune Amplifier XE bin[32|64]amplxe-cl.exe Linux: /opt/intel/vtune_amplifier_xe/bin[32|64]/amplxe-cl Help: amplxe-cl –help É possível gerar a linha de comando a partir da GUI Excelente para análise de regressão – permite enviar o arquivo de resultados para o Desenvolvedor Resultados obtidos pela linha de commando podem ser analisados pela GUI
  • 27. 27 Coleta de Dados Remota Analise de forma conveniente os dados coletados em sistemas remotos 1. Configure a coleta usando a GUI localmente 2. Copie as instruções da linha de commando para o Clipboard 3. Abra um shell remote para o sistema de destino 4. Cole a linha de commando (Paste) e execute a coleta 5. Copie os resultados para seu sistema local 6. Abra o arquivo usando a GUI local Sistema Local VTune™ Amplifier XE GUI completa Sistema Remoto Lightweight command line collector Copia a linha de comando Copia os arquivos de resultado • “Performance footprint” minimo durante a coleta • Configuração simplificada utilizando a GUI • Fácil análise dos Resultados
  • 28. 28 Compare Resultados Rapidamente–Ordene por Diferenças Intel® VTune™ Amplifier XE Identifique rapidamente causas nas regressões – Rodando uma análise diária por linha de commando – Identificando responsáveis pelas principais funções, para saber quem deve ser alertado Compare 2 otimizações – O que melhorou? Compare 2 sistemas – Por que aumentou (ou não) o desempenho?
  • 29. 29 Profiling para Java* com Baixo Overhead Intel® VTune™ Amplifier XE 2013 Precisão & Baixo Overhead – Amostragem rápida / não instrusiva – Amostragem de Hardware ainda mais rápida (agora com stacks opcionais) – Perfis avançados exclusivos (cache misses, banda…) Versátil & Fácil de usar – Múltiplas JVMs simultâneas – Ambiente misto Java / C++ / Fortran – Veja os resultados no código Java Melhores Informações, Menor Overhead, Mais Fácil de usar
  • 30. 30 Aumente a Eficiência Energética Intel® VTune™ Amplifier XE 2013 Otimização Tradicional – Redução da utilização total de recursos – Atingida através de: • Uso de novas instruções • Aumento do Paralelismo Nova Otimização – Aumento do tempo ocioso sem interrupção – Atingida através de: • Redução da frequência da atividade • Consolidação de atividades Minimize os “Wake-Ups” de Timers e Interrupções
  • 31. 31 Analise o Consumo de Energia da CPU Intel® VTune™ Amplifier XE 2013 Minimize os “Wake-Ups” para reduzir o consumo da CPU Identifique as causas dos “Wake-ups” • Timers disparados pela aplicação • Interrupções mapeadas p/ níveis de interrupção de Hardware • Visualização da taxa de “Wake-Up” Visualize o código fonte dos eventos que “acordam” o processador Visualize frequências da CPU por núcleo (core) • A frequência da CPU muda de acordo com o nível de atividade Somente para Linux Selecione & filtre para ver um objeto “wake-up” único Identifique a causa dos “Wake-Ups” analisando as call stacks dos timers
  • 32. 32 Disponível em Versões Windows & Linux GUI Standalone, Linha de Comando, Integração com Visual Studio Microsoft Windows* – Windows XP*, Windows Vista*, Windows 7* – Windows Server* 2003, 2008 – Microsoft Visual Studio* 2008, 2010 e 2012 – GUI Standalone e Linha de Comando – IA32 e Intel® 64 Linux* – RHEL*, Fedora*, SUSE*, CentOS*, Ubuntu* – Outras distros também podem funcionar – GUI Standalone e Linha de Comando – IA32 e Intel® 64 Usuário Individual ou licenças “flutuantes”
  • 33. 33 Pacote Intel® Parallel Studio XE Conjuntos de Ferramentas “All in one” Crie código com velocidade e confiabilidade Intel® Cluster Studio XE Intel® Parallel Studio XE Análise ● ● Intel® VTune™ Amplifier XE – Análise de Desempenho (Profiler) ● ● Intel® Inspector XE – Análise de Memória & Threads ● ● Static Analysis & Pointer Checker – Encontre erros de Código & Segurança ● ● Intel® Advisor XE – Assistente para a implementação de Threading ● Intel® Trace Analyzer & Collector – Ferramenta para Otimização de MPI Compiladores& Bibliotecas ● ● Intel® Compiler – Compilador Otimizado para C, C++ e Fortran ● ● Intel® Integrated Performance Primitives† - Otimizações para Mídia e Dados ● ● Intel® Threading Building Blocks† - Paralelismo de Aplicações com Alto Desempenho ● ● Intel® Math Kernel Library – Biblioteca Matemática de Alto Desempenho ● Intel® MPI Library – Messaging Flexível, Eficiente e Escalável † Disponível somente para C e C++ Versões do Parallel Studio XE somente para C, C++ ou somente para Fortran também estão disponíveis
  • 35. 35 • INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. • A "Mission Critical Application" is any application in which failure of the Intel Product could result, directly or indirectly, in personal injury or death. SHOULD YOU PURCHASE OR USE INTEL'S PRODUCTS FOR ANY SUCH MISSION CRITICAL APPLICATION, YOU SHALL INDEMNIFY AND HOLD INTEL AND ITS SUBSIDIARIES, SUBCONTRACTORS AND AFFILIATES, AND THE DIRECTORS, OFFICERS, AND EMPLOYEES OF EACH, HARMLESS AGAINST ALL CLAIMS COSTS, DAMAGES, AND EXPENSES AND REASONABLE ATTORNEYS' FEES ARISING OUT OF, DIRECTLY OR INDIRECTLY, ANY CLAIM OF PRODUCT LIABILITY, PERSONAL INJURY, OR DEATH ARISING IN ANY WAY OUT OF SUCH MISSION CRITICAL APPLICATION, WHETHER OR NOT INTEL OR ITS SUBCONTRACTOR WAS NEGLIGENT IN THE DESIGN, MANUFACTURE, OR WARNING OF THE INTEL PRODUCT OR ANY OF ITS PARTS. • Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any features or instructions marked "reserved" or "undefined". Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The information here is subject to change without notice. Do not finalize a design with this information. • The products described in this document may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request. • Intel processor numbers are not a measure of performance. Processor numbers differentiate features within each processor family, not across different processor families. Go to: http://www.intel.com/products/processor_number. • Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order. • Copies of documents which have an order number and are referenced in this document, or other Intel literature, may be obtained by calling 1- 800-548-4725, or go to: http://www.intel.com/design/literature.htm • Intel, Core, Atom, Pentium, Intel inside, Sponsors of Tomorrow, Pentium, 386, 486, DX2 and the Intel logo are trademarks of Intel Corporation in the United States and other countries. • *Other names and brands may be claimed as the property of others. • Copyright ©2012 Intel Corporation. Legal Disclaimer