Closed Bug 1132531 Opened 11 years ago Closed 8 years ago

Add GPU profiling

Categories

(DevTools :: Performance Tools (Profiler/Timeline), defect, P3)

defect

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: fitzgen, Unassigned)

References

Details

(Whiteboard: [chrome-parity][devtools-platform])

Attachments

(1 file)

The gecko addon has it, so presumably we have the data and just need to render it. Gogogogo!
Not specifically blocking v2.
No longer blocks: perf-tool-v2
We can easily get this by adding the "gpu" feature to the profiler, and we'll get markers after the profile ends. Caveats: * They won't be realtime, unlike all of our other markers -- might be weird. * Once we start modifying profiler features, we'll have to figure out how to handle this, as we could have multiple recordings at once, and this would require stopping the profiler (can display a "warning" message indicating this or something)
Chrome has something similar behind an experimental pref (hit shift 6 times), "GPU Data on Timeline". May or may not make it to release in this form. http://i.imgur.com/TThF4KK.png
Whiteboard: [chrome-parity]
Is the gecko profiler GPU data useful for your use cases, Daosheng?
Flags: needinfo?(dmu)
Same for you Vlad -- is the gecko profiler GPU data useful for web VR debugging currently?
Flags: needinfo?(vladimir)
Whiteboard: [chrome-parity] → [chrome-parity][devtools-platform]
Jordan, I will confirm it this week. Sorry for I am a little busy in this couple of days.
var selectedFeatures = []; selectedFeatures.push("leaf"); selectedFeatures.push("gpu"); var entries = 1000000; var interval = 1; var threadFilter = 'GeckoMain,Compositor'; profile.start(entries, interval, selectedFeatures, threadFilter.split(','));
Jordan, I have checked the GPU marker of Chrome, and it seems to be no longer supported. Gecko profiler is pretty great. I think it can give me lots of information for gaming profiling tool. Like refresh frame time, GPU time, and Composite time. But, after trying it as attachment 8654513 [details], I find I can't get GPU time from this profile data even though I selected "gpu" feature. Benoit, could you tell how to parse the profile data to get refresh frame time, GPU time, and Composite time. Like you did in Cleopatra. Thanks.
Flags: needinfo?(dmu) → needinfo?(bgirard)
Its only implemented on Mac. Did you try there? So far the data has not been very useful for platform. I'm not convinced timer queries are sufficiently useful. But it might be better for webgl.
Flags: needinfo?(bgirard)
Benoit, I ran it on my Mac, and it uses add-on to Cleopatra. It can show the GPU markers. But, if I use gecko profiler API inside devTool, I can't any data that is related to GPU. Therefore, I think I might exploit wrong features to get GPU time. Besides, I have tried Gecko profiler add-on on Windows and Ubuntu. It can not catch the GPU time. My original purpose of game profiling tool is to be executed for developers on any platform, especially for Windows, because most of game developers come from Windows.
Flags: needinfo?(bgirard)
Benoit, I use the some usage of Gecko profiler API inside devTool and make it start profiling while I initialize the devTool. I can get the GPU time data right now. I think GPU time probably has to wait for a while until it's ready. Thanks a lot.
It wont work on Windows/Linux ATM because it's not implemented there. I don't force a flush of the results, they are just posted some time after they are ready. The current feature is not suitable to build on top of. We need to spend more time experimenting with the GPU perf APIs and finding the most suitable thing to expose. Also what we use to monitor layers composite time isn't what we will want to expose to game developers doing canvas/webgl performance work.
Flags: needinfo?(bgirard)
Flags: needinfo?(vladimir)
Triaging. Filter on ADRENOCORTICOTROPIC (yes).
OS: Mac OS X → Unspecified
Priority: -- → P3
Hardware: x86 → Unspecified
We capture markers and render them liberally in perf.html. This is no longer relevant, but we should file follow-up bugs if we want specific GPU enhancements.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → WONTFIX
Product: Firefox → DevTools
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: