最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

CPU 使用率性能分析器 (CPU Usage Profiler)

2020-05-18 17:40 作者:unity_某某師_高錦錦  | 我要投稿


CPU Usage Profiler

CPU Usage Profiler 顯示游戲中的時(shí)間使用情況。選擇此選項(xiàng)后,下方面板將顯示所選幀的層級(jí)時(shí)間數(shù)據(jù)。請(qǐng)參閱有關(guān)?Profiler 窗口的文檔以了解關(guān)于 Profiler 時(shí)間軸的更多信息。

  • Hierarchy mode:顯示層級(jí)時(shí)間數(shù)據(jù)。

  • Group Hierarchy mode:將時(shí)間數(shù)據(jù)分成邏輯組(例如 Rendering、Physics、Scripts)。由于任何組的子項(xiàng)也可以位于不同的組中(例如,某些腳本也可能調(diào)用渲染函數(shù)),因此組時(shí)間的百分比通??傆?jì)超過 100%。

上下拖動(dòng)圖表標(biāo)簽可重新排列 CPU 圖表的堆疊方式。

選擇各項(xiàng)

在下方面板中選擇某一項(xiàng)時(shí),將突出顯示其對(duì) CPU 圖表的貢獻(xiàn)(其余部分將變暗)。再次單擊某一項(xiàng)將取消選擇該項(xiàng)。

已選擇 Render.OpaqueGeometry 并在圖表中突出顯示其貢獻(xiàn)

在層級(jí)時(shí)間數(shù)據(jù)中,__Self__ 列表示在特定函數(shù)中所用的時(shí)間量,不包括調(diào)用子函數(shù)所用的時(shí)間。在上面的截屏中,41.1% 的時(shí)間用在了?Camera.Render?函數(shù)上。此函數(shù)做了很多工作,并調(diào)用各種繪制和剔除函數(shù)。排除所有這些函數(shù)之后,只有 2.1% 的時(shí)間用在了?Camera.Render?函數(shù)本身上。

Time ms?和?Self ms?列顯示相同的信息,但以毫秒為單位。Camera.Render?需要 0.01ms,但包括其調(diào)用的所有函數(shù)在內(nèi)一共需要 0.21ms。GC Alloc?列顯示當(dāng)前幀中已分配并稍后由垃圾回收器收集的內(nèi)存量。將此值保持為零可防止垃圾回收器造成幀率不穩(wěn)。

CPU 性能分析器的?Others?部分記錄不屬于 Rendering、Scripts、Physics、Garbage Collection 或 VSync 的所有方面的總和。此部分包括 Animation、AI、Audio、Particles、Networking、Loading 和 PlayerLoop。

物理標(biāo)記

下面的描述簡(jiǎn)要介紹了各種高級(jí) Physics Profiler 標(biāo)記的含義。

  • Physics.Simulate:從?FixedUpdate?中調(diào)用。通過指示物理引擎 (PhysX) 運(yùn)行其模擬來更新物理系統(tǒng)的當(dāng)前狀態(tài)。

  • Physics.Processing:從?FixedUpdate?中調(diào)用。處理所有非布料物理作業(yè)。擴(kuò)展此標(biāo)記可顯示物理引擎內(nèi)部完成的工作的低級(jí)細(xì)節(jié)。

  • Physics.ProcessingCloth:從?FixedUpdate?中調(diào)用。處理所有布料物理作業(yè)。擴(kuò)展此標(biāo)記將顯示物理引擎內(nèi)部完成的工作的低級(jí)細(xì)節(jié)。

  • Physics.FetchResults:從?FixedUpdate?中調(diào)用。從物理引擎收集物理模擬結(jié)果。

  • Physics.UpdateBodies:從?FixedUpdate?中調(diào)用。更新所有物理體的位置和旋轉(zhuǎn)以及發(fā)送說明這些更新的消息。

  • Physics.ProcessReports:從?FixedUpdate?中調(diào)用。此階段在物理?FixedUpdate?結(jié)束后運(yùn)行,負(fù)責(zé)處理響應(yīng)模擬結(jié)果的所有不同階段。更新接觸、關(guān)節(jié)破壞和觸發(fā)器并發(fā)送相關(guān)消息。包括四個(gè)不同的子階段:

    • Physics.TriggerEnterExits:從?FixedUpdate?中調(diào)用。處理?OnTriggerEnter?和?OnTriggerExit?事件。

    • Physics.TriggerStays:從?FixedUpdate?中調(diào)用。處理?OnTriggerStay?事件。

    • Physics.Contacts:從?FixedUpdate?中調(diào)用。處理?OnCollisionEnter、OnCollisionExit?和?OnCollisionStay?事件。

    • Physics.JointBreaks:從?FixedUpdate?中調(diào)用。處理與被破壞的關(guān)節(jié)相關(guān)的更新和消息。

  • Physics.UpdateCloth:從?Update?中調(diào)用。進(jìn)行與布料及其蒙皮網(wǎng)格相關(guān)的更新。

  • Physics.Interpolation:從?Update?中調(diào)用。此階段處理所有物理對(duì)象的位置和旋轉(zhuǎn)的插值。

性能警告

CPU 性能分析器能夠檢測(cè)并警告一些常見的性能問題。查看?CPU Usage?時(shí),這些問題會(huì)顯示在下方面板的?Warning?列中。

性能分析器警告指示已移動(dòng)靜態(tài)碰撞體

性能分析器可檢測(cè)的具體問題包括:

  • Rigidbody.SetKinematic?[Re-create non-convex MeshCollider for Rigidbody]

  • Animation.DestroyAnimationClip?[觸發(fā) RebuildInternalState]

  • Animation.AddClip?[觸發(fā) RebuildInternalState]

  • Animation.RemoveClip?[觸發(fā) RebuildInternalState]

  • Animation.Clone?[觸發(fā) RebuildInternalState]

  • Animation.Deactivate?[觸發(fā) RebuildInternalState]

在上面的截屏中,性能分析器顯示了?Static Collider.Move?警告。Warning?列顯示此警告已在當(dāng)前幀中觸發(fā) 12 次。術(shù)語“延遲成本”意味著,雖然性能分析器中的條目可能顯示低成本(在此情況下為 0.00ms),但該操作可能會(huì)在以后觸發(fā)更多消耗系統(tǒng)資源的操作。

CPU Profiler Timeline

Mem Record:本機(jī)內(nèi)存性能分析

本機(jī)內(nèi)存性能分析允許在 Unity 的本機(jī)內(nèi)存管理系統(tǒng)中分析活動(dòng),并評(píng)估對(duì)運(yùn)行時(shí)性能的影響。在 Unity 的內(nèi)存管理中搜索不必要的或資源密集的分配模式時(shí),此分析功能非常有用。

要分析 Unity 的本機(jī)內(nèi)存管理,必須記錄內(nèi)存情況。要訪問本機(jī)內(nèi)存記錄模式(在 Unity 中稱為?Mem Record__),請(qǐng)選擇?Window__ >?Profiler?以打開 Profiler 窗口。選擇?CPU Usage?Profiler(如果不可見,請(qǐng)單擊?Add Profiler?>?CPU__),然后在 Profiler 下面選擇下拉菜單。接下來,單擊?Timeline__,然后選擇?Mem Record。

選擇記錄模式

選項(xiàng)????????????功能????????????對(duì)性能影響

None:禁用模式。這是默認(rèn)選擇。(無)

Sample only:記錄內(nèi)存分配、重新分配、取消分配、活動(dòng)類型和系統(tǒng)。(低)

Callstack (fast)此選項(xiàng)具有與?Sample only?相同的功能,但還記錄來自本機(jī)分配站點(diǎn)的快捷調(diào)用棧(調(diào)用棧從本機(jī)符號(hào)轉(zhuǎn)換為腳本符號(hào))。實(shí)際上,最多只能看到最深腳本符號(hào)的調(diào)用棧。(中)

Callstack (full)此選項(xiàng)具有與?Sample only?相同的功能,但還記錄具有完整腳本到本機(jī)轉(zhuǎn)換和本機(jī)到腳本轉(zhuǎn)換的調(diào)用棧。(高)

注意:當(dāng)激活的性能分析器僅連接到獨(dú)立平臺(tái)播放器時(shí),僅支持低影響力的?Sample only?模式。

記錄的內(nèi)存分配樣本以亮紅色顯示在 Profiler 窗口中。

內(nèi)存分配樣本

單擊?Mem Record?旁邊的?High Detail?按鈕可啟用 High Detail 模式。選擇一個(gè)樣本來顯示分配類型和系統(tǒng)。如果為所選分配樣本記錄了調(diào)用棧,則還會(huì)解析并顯示關(guān)聯(lián)的調(diào)用棧符號(hào):

High Detail 模式

使用 Mem Record

在許多情況下,__Mem Record__ 功能很有用。例如:

  • 了解系統(tǒng)何時(shí)進(jìn)行大量小型分配而不僅僅是少量大型分配。

  • 了解何時(shí)工作線程意外分配內(nèi)存(例如,通過意外使用 MemLabel)。

  • 查找鎖爭(zhēng)用(多個(gè)線程嘗試同時(shí)訪問本機(jī)內(nèi)存系統(tǒng)時(shí))。

  • 查找內(nèi)存碎片的來源(對(duì)于低內(nèi)存設(shè)備尤為重要)。

Timeline 的 High Detail 視圖

CPU Usage Profiler Timeline 的?High Detail?視圖為 Unity 的 CPU Usage Profiler 記錄的每個(gè)樣本提供至少一個(gè)寬度像素。

這樣便可查看幀中所有活動(dòng)的完整概況,包括線程同步或內(nèi)存分配等短期活動(dòng)。

要啟用?High Detail?視圖,請(qǐng)選擇?Window?>?Profiler?以打開 Profiler 窗口。選擇?CPU Usage?Profiler(如果不可見,請(qǐng)單擊?Add Profiler?>?CPU__),然后將在 Profiler 下面選擇下拉菜單,并依次單擊?Timeline__ 和?High Detail。

High Detail

比較

以下兩個(gè)圖顯示了 CPU Usage Profiler Timeline 的?High Detail?視圖與普通視圖之間的區(qū)別。

High Detail 視圖

High Detail 視

普通視圖

普通視圖


CPU 使用率性能分析器 (CPU Usage Profiler)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
广州市| 重庆市| 芒康县| 聊城市| 临安市| 富阳市| 红原县| 龙州县| 班玛县| 仁化县| 库伦旗| 巩义市| 浠水县| 昂仁县| 姚安县| 太仆寺旗| 繁峙县| 驻马店市| 蕉岭县| 花莲县| 泰安市| 金平| 江西省| 宣汉县| 方正县| 庆云县| 远安县| 普安县| 临泽县| 女性| 平陆县| 青冈县| 柯坪县| 开原市| 南汇区| 枞阳县| 苏州市| 车致| 玛纳斯县| 乌鲁木齐市| 白水县|