亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Java-FlameGraph火焰圖

shleyZ / 2813人閱讀

摘要:什么是火焰圖怎么用以下會(huì)為你一一解答。工具包標(biāo)準(zhǔn)分析器,用于生成系統(tǒng)堆棧信息提供轉(zhuǎn)換成帶標(biāo)示的代理生成火焰圖的工具生成全部進(jìn)程的堆棧信息還有一些問(wèn)題很多方法都是缺少的,對(duì)比起,在圖里的堆棧信息可能只有的深度。

什么是FlameGraph火焰圖?怎么用?以下會(huì)為你一一解答。

Let"s Go! 1.結(jié)論

如果能生成出來(lái)對(duì)應(yīng)圖表,分析java使用cpu性能很好用。

但是有時(shí)生成出來(lái)的堆棧寫著Unknown,沒(méi)有具體堆棧信息,會(huì)比較抓狂。

如想獲取更多信息請(qǐng)參考:https://github.com/jvm-profiling-tools/perf-map-agent/issues/44

Github提問(wèn)題回復(fù)速度也較慢,遇到自己解決不了的問(wèn)題也會(huì)比較頭疼。

2.是什么?

用于量化框架中的性能,包括代碼編譯消耗的時(shí)間,代碼緩存,其他系統(tǒng)類庫(kù)及內(nèi)核代碼執(zhí)行的時(shí)間,常用于定位cpu使用率問(wèn)題。

3.有什么種類?

red/blue differential flame graphs

flame graph

CPI(cycles-per-instruction)flame graph:CPI(平均每條指令的平均時(shí)鐘周期數(shù))=(cpu時(shí)間/ic指令數(shù)目)*頻率

4.怎么樣?

5.安裝及應(yīng)用呢?

FlameGraph介紹

安裝及應(yīng)用步驟

環(huán)境要求(重要)

操作系統(tǒng)centos 7.0

cmake2.8.6或以上

JDK8 update 60 build 19 以后,需要添加jdk啟動(dòng)參數(shù):-XX:+PreserveFramePointer

安裝perf

6.怎么看?

圖表

y軸:棧深度

x軸:cpu時(shí)間

長(zhǎng)方形:一個(gè)棧(方法)

長(zhǎng)度:出現(xiàn)在監(jiān)視器中的時(shí)長(zhǎng)(占用cpu的時(shí)間)

其他:從左到右的順序只是按字母排序,無(wú)其他意義

分析

從下到上:從父到子方法追查方法

從上到下:先找出占用最多時(shí)間的棧,找出它的進(jìn)程,在圖最底部,關(guān)注最寬的方法。

工具包

perf_events:標(biāo)準(zhǔn)linux分析器,用于生成系統(tǒng)堆棧信息

perf-map-agent:提供轉(zhuǎn)換perf_events成帶java標(biāo)示的JVMTI代理

Flame Graph:生成火焰圖的工具

Misc:生成全部java進(jìn)程的堆棧信息

7.還有一些問(wèn)題

很多java方法都是缺少的,對(duì)比起jstack,在圖里的堆棧信息可能只有1/3的深度。

JVM動(dòng)態(tài)編譯(JIT)時(shí)不會(huì)暴露一個(gè)圖表給系統(tǒng)監(jiān)視器(已修復(fù))

JVM還使用x86上的幀指針寄存器(RBP在x86 - 64)作為一個(gè)通用寄存器

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/77227.html

相關(guān)文章

  • 在OR項(xiàng)目中使用火焰

    摘要:火焰圖介紹看到里用火焰圖覺(jué)得挺有意思的,又裝逼又有用。今天在自己以前的項(xiàng)目中測(cè)試了下,下面貼個(gè)圖留個(gè)紀(jì)念。火焰圖安裝參考安裝其實(shí)主要就是安裝內(nèi)核探測(cè)工具。 火焰圖介紹 看到openresty里用火焰圖覺(jué)得挺有意思的,又裝逼又有用。它可以快速的定位到程序性能的瓶頸,生成程序的調(diào)用棧并且計(jì)算調(diào)用棧中每部分的 CPU 消耗,能夠比較容易的找到CPU占用高、內(nèi)存泄漏等問(wèn)題。今天在自己以前的項(xiàng)目...

    RobinQu 評(píng)論0 收藏0
  • idea 啟用火焰功能

    摘要:開(kāi)源項(xiàng)目是一個(gè)的低開(kāi)銷采樣分析器,可以生成火焰圖。集成了它的功能,使用起來(lái)更加的簡(jiǎn)單。開(kāi)啟火焰圖按下快捷鍵選擇勾選這就開(kāi)啟了火焰圖功能。啟動(dòng)程序隨便寫一點(diǎn)代碼使用下圖中紅色標(biāo)注的方式啟動(dòng)火焰圖黃色的部分是調(diào)用棧,其他的則是系統(tǒng)調(diào)用。 開(kāi)源項(xiàng)目 async-profiler 是一個(gè)Java 的低開(kāi)銷采樣分析器,可以生成火焰圖。idea集成了它的功能,使用起來(lái)更加的簡(jiǎn)單。 開(kāi)啟火焰圖 按...

    W_BinaryTree 評(píng)論0 收藏0
  • 基本性能分析,省了幾百萬(wàn)美元

    摘要:本文是關(guān)于我如何應(yīng)用基本性能分析技術(shù),借助火焰圖做了一處小改進(jìn),使得我們計(jì)算機(jī)集群的狀況獲得了倍的改善,并在第二年幫助節(jié)省了幾百萬(wàn)刀。最終,通過(guò)對(duì)平均大小在的事件進(jìn)行批量插入,我們的吞吐量獲得了的提高。 本文是關(guān)于我如何應(yīng)用基本性能分析技術(shù),借助火焰圖做了一處小改進(jìn),使得我們 Postgres 計(jì)算機(jī)集群的 CPU 狀況獲得了 10 倍的改善,并在第二年幫助 Heap 節(jié)省了幾百萬(wàn)刀。針對(duì)用...

    張憲坤 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<