AMD CodeAnalyst — це профайлер коду на основі графічного інтерфейсу для комп'ютерів на базі x86 і x86-64. CodeAnalyst має схожий вигляд на платформах Linux і Microsoft Windows. CodeAnalyst використовує специфічні методи апаратного профілювання, розроблені для роботи з процесорами AMD, а також техніку профілювання на основі таймера, яка не потребує спеціальної апаратної підтримки; це дозволяє підмножині функцій профілювання працювати на процесорах не AMD, таких як процесори Intel.[2]

CodeAnalyst
ТипПрофайлер
РозробникAMD
Операційна системаLinux, Windows
GNU фреймворкQt
Мова програмуванняC++
ЛіцензіяПропрієтарне програмне забезпечення, GNU General Public License[1]
Вебсайтdeveloper.amd.com/tools/heterogeneous-computing/amd-codeanalyst-performance-analyzer/

У березні 2013 року CodeAnalyst замінено на AMD CodeXL.[3]

Оптимізація коду

ред.

CodeAnalyst побудований на OProfile для платформи Linux і доступний для безкоштовного завантаження. Графічний інтерфейс користувача допомагає в різних видах профілювання коду, включаючи профілювання на основі часу, профілювання на основі апаратних подій, профілювання на основі інструкцій та інші. Це створює статистичні дані про такі деталі, як час, витрачений на кожну підпрограму, який можна деталізувати до рівня вихідного коду або інструкції. Час, потрачений інструкціями, може свідчити про якісь слабкі місця в конвеєрі під час виконання інструкції. Оптимізація може бути такою ж простою, як перевпорядкування інструкцій для максимального використання кешу лінії даних або зміна/видалення розгалужень і циклів, щоб було використано максимальну кількість блоків виконання (блоки завантаження/зберігання, ALU, блок виконання FP...) паралельно.

Підтримка PERF була додана в CodeAnalyst 3.4, що дозволяє користувачам вибирати між OProfile і PERF як бекендом профілювання.[4]

Instruction-Based Sampling

ред.

CodeAnalyst підтримує IBS (вибірка на основі інструкцій), яка була представлена в процесорах AMD Family 10h (Barcelona). Завдяки підтримці IBS CodeAnalyst може точніше визначити інструкції, які викликають зупинки конвеєра та промахи кешу.[5]

Відкрите програмне забезпечення

ред.

Версія CodeAnalyst для Linux доступна за ліцензією GNU General Public License 2.0.[6]

CodeAnalyst також використовує інші компоненти з відкритим вихідним кодом, включаючи фреймворк Qt, libdwarf, libelf і Binary File Descriptor library.

Див. також

ред.

Примітки

ред.
  1. AMD CodeAnalyst Performance Analyzer for Linux [Архівовано 9 липня 2012 у Wayback Machine.]
  2. How I ran AMD CodeAnalyst on an Intel CPU. 4 листопада 2009. Архів оригіналу за 26 лютого 2012. Процитовано 23 лютого 2010. {{cite web}}: Cite має пустий невідомий параметр: |df= (довідка)
  3. AMD CodeAnalyst End-Of-Life Notice. 2 березня 2013. Архів оригіналу за 6 серпня 2013. Процитовано 10 березня 2013.
  4. AMD releases CodeAnalyst 3.4 for Linux!. Архів оригіналу за 9 листопада 2013. Процитовано 9 листопада 2013. {{cite web}}: Cite має пустий невідомий параметр: |df= (довідка)
  5. AMD Developer Central (PDF). AMD. Архів оригіналу (PDF) за 14 лютого 2012. Процитовано 14 лютого 2012.
  6. AMD CodeAnalyst Performance Analyzer for Linux

Посилання

ред.