Re: [程式] CPU會等GPU嗎?

看板GameDesign (遊戲設計)作者 (班班)時間11年前 (2014/06/11 19:24), 編輯推噓2(208)
留言10則, 3人參與, 最新討論串2/4 (看更多)
※ 引述《lovesnake (LoyalDog)》之銘言: : CPU把Batch丟給GPU以後,會等GPU Interapt才繼續該Process/Thread嗎? ^^^^^^^^ interrupt 看你程式怎麼寫,但是通常Render Thread只會有一個的情況下,CPU送東西給GPU之後, 大部分顯示引擎會等到結果返回才進行下一次的render,要不然資源存取很容易打架 : 還是就直接繼續跑,不管GPU了? 大多數的引擎都會等,一個render結束才會執行下一個。 : 問這個問題主要是想知道在Render前後抓時間,抓到的到底是只有 : CPU的執行時間還是連GPU的都抓得到。 在軟體層面來說,可以取得的時間只有 可以取得CPU準備資料所消耗的時間 可以取得CPU送指令給GPU所消耗的時間 + GPU收到指令返回結果所消耗時間的"總和" 無法從軟體面單獨取得CPU送資料給GPU消耗的時間 無法從軟體面單獨取得GPU收到指令完成運算時所消耗的時間 我所了解的程度有限,希望可以幫上忙 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.34.226.114 ※ 文章網址: http://www.ptt.cc/bbs/GameDesign/M.1402485883.A.C0D.html

06/11 19:58, , 1F
如果程式內還有很多Coroutine,而且跟Render無關
06/11 19:58, 1F

06/11 19:58, , 2F
這樣CPU在等GPU的期間會去執行嗎?
06/11 19:58, 2F

06/11 20:00, , 3F
如果會的話在Render前後抓時間,也可能包含Coroutine
06/11 20:00, 3F

06/11 20:00, , 4F
所消耗的時間囉?
06/11 20:00, 4F

06/11 20:14, , 5F
我不太理解你的Coroutine是指什麼,但是和Render無關
06/11 20:14, 5F

06/11 20:15, , 6F
那情況就非常難說,非常的depend
06/11 20:15, 6F

06/11 20:17, , 7F
而且還要看你API能夠存取的層次
06/11 20:17, 7F

06/11 20:25, , 8F
如果你有很多Thread會影響你的Render Thread,那這個
06/11 20:25, 8F

06/11 20:26, , 9F
問題我回答不出來,還是要看你的程式如何實作
06/11 20:26, 9F

06/12 08:17, , 10F
你講的問題完全看遊戲怎麼寫啊... XD
06/12 08:17, 10F
文章代碼(AID): #1Jc3nxmD (GameDesign)
討論串 (同標題文章)
文章代碼(AID): #1Jc3nxmD (GameDesign)