AMD CodeAnalyst
AMD CodeAnalyst | |
---|---|
Desenvolvedor | |
AMD | |
Sistema operacional | |
Linux, Windows | |
Tipo | |
Profiler | |
Licença | |
Software proprietário, GNU General Public License[1] | |
Site | |
developer |
O AMD CodeAnalyst é um criador de perfil de código baseado em GUI para máquinas baseadas em x86 e x86-64. O CodeAnalyst tem aparência semelhante nas plataformas Linux e Microsoft Windows. O CodeAnalyst usa técnicas específicas de criação de perfil de hardware que são projetadas para funcionar com processadores AMD, bem como uma técnica de criação de perfil baseada em temporizador que não requer suporte de hardware específico; isso permite que um subconjunto de recursos de criação de perfil funcione em processadores não AMD, como processadores Intel.[2]
Em março de 2013, o CodeAnalyst foi substituído pelo AMD CodeXL.[3]
Otimização de código
[editar | editar código-fonte]O CodeAnalyst é desenvolvido no OProfile para a plataforma Linux e está disponível para download gratuito. A GUI auxilia em vários tipos de criação de perfil de código, incluindo criação de perfil baseada em tempo, criação de perfil baseada em eventos de hardware, criação de perfil baseada em instruções e outros. Isso produz estatísticas sobre detalhes como tempo gasto em cada sub-rotina, que podem ser detalhados até o código-fonte ou nível de instrução. O tempo gasto pelas instruções pode ser indicativo de paradas no pipeline durante a execução das instruções. A otimização pode ser tão simples quanto reordenar as instruções para utilização máxima de um cache de linha de dados ou alterar/remover as ramificações e loops para que o número máximo de unidades de execução (unidades de carga/armazenamento, ALU, unidade de execução FP ...) sejam utilizadas em paralelo.
O suporte para PERF foi adicionado no CodeAnalyst 3.4, permitindo que os usuários escolham entre OProfile e PERF como backend de criação de perfil.[4]
Instruction-Based Sampling
[editar | editar código-fonte]O CodeAnalyst oferece suporte ao IBS (Instruction-Based Samplings), que foi introduzido nos processadores AMD Família 10h (Barcelona). Com o suporte do IBS, o CodeAnalyst pode identificar com mais precisão as instruções que causam paralisações no pipeline e falhas no cache.[5]
Código aberto
[editar | editar código-fonte]A versão Linux do CodeAnalyst está disponível sob a GNU General Public License 2.0.[6]
O CodeAnalyst também usa outros componentes de código aberto, incluindo o framework Qt, libdwarf, libelf e a biblioteca Binary File Descriptor.
Ver também
[editar | editar código-fonte]- AMD CodeXL
Referências
- ↑ AMD CodeAnalyst Performance Analyzer for Linux Arquivado em julho 9, 2012, no Wayback Machine
- ↑ «How I ran AMD CodeAnalyst on an Intel CPU». VirtualDub. 4 de novembro de 2009. Consultado em 30 de abril de 2025. Cópia arquivada em 26 de fevereiro de 2012
- ↑ «AMD CodeAnalyst End-Of-Life Notice». AMD Developer Central. 2 de março de 2013. Consultado em 30 de abril de 2025. Cópia arquivada em 6 de agosto de 2013
- ↑ «AMD releases CodeAnalyst 3.4 for Linux!». Consultado em 30 de abril de 2025. Cópia arquivada em 9 de novembro de 2013
- ↑ «AMD Developer Central» (PDF). AMD. Consultado em 30 de abril de 2025. Cópia arquivada (PDF) em 14 de fevereiro de 2012
- ↑ AMD CodeAnalyst Performance Analyzer for Linux Arquivado em 2012-10-24 no Wayback Machine