agi
agi copied to clipboard
Difficulty capturing Rise of Kingdoms: Lost Crusade
Hernan filed an internal bug about this originally, and Hugues reproduced it.
Environment information:
- AGI version: agi-2.1.0-dev-20210712
- Host OS: Android If tracing on Android:
- Device model: Both Pixel 4a and Pixel 4XL
- Android Version: 11
Bug description From Hernan: Rise of Kingdoms would get stuck loading when trying to get a capture. When running the game on ANGLE after, we have to delete the various AGI settings (e.g. enable_gpu_debug_layers) to get it to work.
Note, I was able to get a trace before eventually, but I think this should be a bug since it should be easier to get a trace.
From Hugues: During capture, the game is stuck on a loading screen. Logcat attached, I didn't catch anything obvious standing out.
This application launches two processes/activities: com.lilithgame.roc.gp, (A), and com.lilithgame.roc.gp:lilith_sdk, (B). If the Process Name field in AGI is left blank when capturing a trace, the application will appear to hang soon after the second process/activity begins.
Process A is the main rendering thread, while process B creates a Vulkan instance and submits draw commands followed by a (QueueSubmit though without a QueuePresent()).
If "Process Name" is filled in at capture time (either one), the app runs successfully and the trace is captured and can be replayed.
There are a couple of relevant AGI commits: 72a3fa765c4 Hugues Evrard Add trace option: name of the process to capture (#770)
and d1cb3d369a AWoloszyn Fixes for multi-process applications
.
It seems that having both processes and their Spy()
instances active at the same time is causing some kind of deadlock or other resource contention.