Hi -- I'm trying to use Snapshot Capture on a Galaxy S7 running Android 6.0.1. Based on the documentation, it appears as if it should be supported, but is greyed out in the UI.
I've tried Andreno Profiler and using the Scrubber works, but metrics/graphing are also greyed out and I cannot capture per-draw timing information/hwcounter info.
Any advice/tips necessary to get this Snapdragon Profile + Snapshot capture working?
We're checking into this, but right now we're unable to reproduce the issue with the Galaxy S7. Any further information you can provide would be helpful.
In Snapshot, the button remains greyed out after selecting your process? Did you start Profiler before starting your app on the device (an unfortunate requirement)?
Hi, thanks for the response. What information would be helpful? Is there something logcat I can search for? I've looked through and don't see anything of note, but there is a whole lot of spam to search through and I may have missed something.
In terms of applications, I am trying to analyze the simplest possible Unity app as a starting point. It is set to use OpenGL ES 3.1, and I've also tried just requiring 2.0
I'm not sure how I would select my process: the "New Snapshot Capture" button on the Start Page is greyed out, so I can't enter the screen to select a process. I have verified that I've started the Profiler before starting my app.
Thanks!
pdb,
If you could capture logcat output starting from the launch of Snapdragon Profiler (the first message to look for is 'SDPCore : Service initialized.') and post it that would help us debug the issue.
Thanks.
Eric
Hi Eric, Here's the logcat output I get when connecting the profiler to my phone, starting at service initialized. I have the phone connected directly to my pc over usb.
07-23 11:13:35.877 12944 12944 I SDPCore : Service initialized.
Thanks Nicholas, that will help us. Could you also run
adb shell getprop ro.build.date.utc
and post the value that's returned?
Eric
The value returned is 1459492354.
Thanks for posting the data! We're combing through everything and trying to reproduce here. This has allowed us to rule out some possible causes, but are still working through other possibilities.
Thanks,
Ben
Thanks again for helping us track down this issue. Could you run
adb shell ls /system/vendor/lib/egl
and post the results for that?
Thanks.
Eric
Thank you again Nicholas. I have another one for you, if you could:
adb shell getprop | grep build
We tracked this down to a bug in Profiler that is triggered by the latest version of ADB. We'll have a new release with a fix available soon.
Thanks again for providing all the extra information - it helped us diagnose the problem more quickly.
Eric
Thanks so much! Great news!
Woohoo! Thank you for investigating and resolving this so quickly! When should we expect the next profiler release?
In the meantime, I might see if I can work with an old version of adb. Do you know of a build that should function correctly with the profiler?
Thanks!
We'll hopefully have a new release in the next few days to a week.
In our tests ADB v1.0.32 worked ok, but v1.0.36 exposed the bug.
Eric
Hi Nicholas,
Everything looks alright on the logcat you provided so I'm curious if Snapdragon Profiler "hangs" because it can't stop the capture. Profiler uses frame delimiters to detect when to start and stop capturing a frame and defaults to eglSwapBuffers for frame delimiters as it's the most common case. We've seen some special cases especially with VR applications that require more advanced methods for frame delimiters. I'm curious if you are using eglSwapBuffers, either way you can look at the "GL Frame delimiters" section in the Options view to play around with alternate ones and see which one best suits your app.
Cheers,
Carlos
Hi guys, any update on when the new version of the profiler might be released? Thanks!
Watch for a Snapdragon Profiler update this week on the Qualcomm Developer Network. The software was finished last week, but it sometimes takes a few days before it appears online.
- Rick
Please try v1.5.2. It was just posted on the download page.
- Rick
Hi,
This might actually be a bug in the driver/Profiler on the device itself that affects apps with multiple contexts. We have a fix, but it requires an OTA. We don't know when this OTA will be delivered unfortunately.
Not a definite reason for the issue, but it's a possible reason for this behavior.
Kevin
Hi
I am also facing same issue capture new snapshot grayed out with snapdragon profiler v1.5.4 and ADB 1.0.36 on my Samsung S7 Edge
@ maulik.kaloliya,
There's a few things Snapdragon Profiler checks in order to determine if the device connected is capable of snapshot captures but being an S7 Edge I can't think of why it would fail as all checks should pass. Could you please reply with your Android's build date please? (Can be queried by calling "adb shell getprop ro.build.date.utc".
An alternative to the grayed out Snapshot capture is to bypass the check. This can be achieved by going to File->Settings->Snapshot and unchecking "Check connected devices for snapshot compatibility". If there was an error with the check itself but Snapshot captures are actually available for your device this should suffice. I think this might be the case for your S7 Edge
I have the same issue with Galaxy S7 Edge.
Disabled compatibility check, snapshot inspector can be opened but list of available processes is empty :(
ADB 1.0.36
profiler 1.6.0 (mac)
Hi filipp,
Please make sure you connect Snapdragon Profiler to your device before starting your app. Once Profiler is connected, launch your app, and as long as it creates an OpenGL context it should show up in the Snapshot list within a few seconds. Also, make sure youre app has internet permissions enabled, as that is required for GPU profiling.
Eric
Nevermind, my phone has Mali GPU
this helped:
adb shell ls /system/vendor/lib/egl
I know it is an old post, but since I could not get OnePlus6 to work with the profiler, I took my old S7 to test. It does get a bit further, and actually begins to transfer stuff from phone. However, it always crashes in the middle of the process.
Here is the logcat:
https://pastebin.com/fH94aC47
adb shell ls /system/vendor/lib/egl