A flame graph is a software profiling visualization technique that allows for the rapid identification of hot spots in computer programs from stack trace data.

A flame graph is a software profiling visualization technique that allows for the rapid identification of hot spots in computer programs from stack trace data.
Flame graphs were created by Australian computer engineer Brendan Gregg in 2011.[2]
The information of a flame graph is represented graphically in a hierarchical manner, creating an intuitive visualization of resource consumption. Each cell in the graph represents a stack frame.[3] Cell position along the y-axis indicates stack depth. Position along the x-axis does not have special meaning; however, cell width indicates "frequency at which that function was present in the stack traces".[3]
The approach is commonly used in profiling system resources such as CPU performance,[4] and memory usage[5] has also seen recent adoption for profiling GPU performance, especially for artificial intelligence software like large language models.[6][7]
Flame graphs have seen increases in popularity in the software industry, especially in cloud computing, being employed by companies like Cloudflare, Netflix, Snowflake, Amazon Web Services and Google.[7][8][9][10][11] They are typically used to analyze performance bottlenecks in commonly deployed software runtimes like Node.js and Java, as well as heavy server-side programs like MySQL and MediaWiki.[1][4][10][12]
Flame graphs are officially supported in several integrated development environments, including Visual Studio, Visual Studio Code and IntelliJ IDEA.[13][14][15] A flame graph implementation is also included with the web development tools built into Google Chrome and Firefox.[14][16]
Performance of software across different versions can be represented through differential flame graph implementations, which allow both improvements and regressions in efficiency to be identified.[17]
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.