Every Vulkan API call will crash after Snapdragon Profiler is connected to the device.
If I launch the app after Snapdragon Profiler is connected, the very basic vkCreateInstance will crash.
If I launch the app, then connect Snapdragon Profiler, any Vulkan API at that moment will crash.
Test device: MI 5 with MIUI 8.5
Android 7.0
In order for Vulkan profiling to work without modifying your application there's two additional requirements. Your device needs to be rooted and you need to do "adb shell setenforce 0". If your device isn't rooted you can try packaging the appropriate layer *.so that is located in your Snapdragon Profiler's installation directory + \service\android\vulkan\layers\[arm64-v8a or armeabi-v7a]\libq3dtools_qgl.so and put it in your applications 'libs' folder. If the problem persists even with this suggestions can you please post the logcat's backtrace that gets generated from the crash?
Hi Carlos,
Jumping on this thread rather than starting a new one as I have the same issue.
After opening the Snapdragon Profiler (2.1.0.11062017 currently) every call to vkCreateInstance will fail with eErrorLayerNotPresent (which if you're using the C++ wrapper header asserts and crashes). I don't have root on this device but I did try packaging libq3dtools_qgl.so which made no change. Are there any extra steps beyond simply copy-pasting the so to the jni libs folder prior to packaging the apk?
Thanks,
Chris
Can you please try renaming the layer to libVkLayer_q3dtools_32.so or libVkLayer_q3dtools_64.so (depending on what you need) and see if that finds the layer?
Thanks Carlos, that did the trick!
Hi Carlos,
what you suggested worked for me too, thanks.
Unfortunately I am still not able to capture CPU and GPU metrics while doing a Trace Capture.
Is there anything I am missing, or another library I should include in my APK?
Screenshot: https://imgur.com/fcdzlKd
Thanks,
Lorenzo
Hi lordalcol
Your metrics message was shown in your bottom data explorer.
Just pull the slider to the right, then you can find them.
Do you mean these? https://imgur.com/VnhdPEP
If so, that's not what I was expecting, I was expecting GPU and CPU metrics related to utilization, cache misses, vertex/fragment shading, etc. similar to what can be seen in https://developer.qualcomm.com/sites/default/files/attachments/vr-profil...
Hi Lorenzo,
The rendering stages trace you referenced is currently only available for OpenGL ES applications. We are working to add more features for Vulkan applications in future versions of Snapdragon Profiler.
Eric
Just a quick note to say that this is still needed with v2018.1.0.