-
-
Notifications
You must be signed in to change notification settings - Fork 159
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
dbakhval
authored and
dbakhval
committed
Sep 20, 2023
1 parent
d839fdb
commit e9bd357
Showing
1 changed file
with
10 additions
and
5 deletions.
There are no files selected for viewing
15 changes: 10 additions & 5 deletions
15
chapters/7-Overview-Of-Performance-Analysis-Tools/7-9 Chapter summary.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,15 @@ | ||
--- | ||
typora-root-url: ..\..\img | ||
--- | ||
|
||
## Chapter Summary {.unlisted .unnumbered} | ||
|
||
\sectionbreak | ||
* We gave a quick overview of the most popular tools available on three major platforms: Linux, Windows and MacOS. Depending on a CPU vendor, the choice of a profiling tool will vary. For systems with an Intel processor we recommend using Vtune, for systems with an AMD processor use uProf, on Apple platforms use Xcode Instruments. | ||
|
||
* Linux perf is probably the most frequently used profiling tool on Linux. It has support for processors from all major CPU vendors. It doesn't have a graphical interface, however, there are free tools that can visualize `perf` profiling data. | ||
|
||
* We also discussed Windows Event Tracing (ETW), which is designed to observe SW dynamics in a running system. Linux has a similar tool called [KUtrace](https://github.com/dicksites/KUtrace)[^1], which we do not cover here. | ||
|
||
* Also, there are hybrid profilers that combine techniques like code instrumentation, sampling and tracing. This takes the best out of these approaches and allows user to get a very detailed information on a specific piece of code. In this chapter we looked at Tracy, which is quite popular among game developers. | ||
|
||
* Continuous profilers already become an essential tool for monitoring performance in production environments. They collect system-wide performance metrics with call stacks for days, weeks or even months. Such tools make it easier to spot the point of performance change and root cause an issue. | ||
|
||
[^1]: KUtrace - [https://github.com/dicksites/KUtrace](https://github.com/dicksites/KUtrace) | ||
|
||
\sectionbreak |