Hi,I'm trying to generate Performance Advisor(html) with Unity debuggable sample application, but facing "Cannot find any frames" error.
Arm Performance Studio : 2024.1Device : Android 12
(1) Execute streamline_me.pyC:\Program Files\Arm\Arm Performance Studio 2024.1\streamline\bin\android>python streamline_me.py --lwi-mode=countersSearching for devices: XXXXX / YYYYY foundSelect a device: Auto-selected XXXXX / YYYYYSearching for debuggable packages: 2 packages foundSelect a debuggable packages: 1) com.DefaultCompany.Myproject 2) com.unity.template.urpsample 0) Exit script Select entry: 1 Selected com.unity.template.urpsampleSearching for an Arm GPU: Mali-G57 GPU foundInstalling OpenGL ES debug layerManual steps: 1) Configure and profile using Streamline 2) Press <Enter> here after capture has completed to finish.Waiting for data capture ...
(2) Capture on Streamline(9.1.0)Select "com.DefaultCompany.Myproject" on Streamline, then click start capture.After about 60 sec, stop capture button.
>Pulling capture from device>Disabling OpenGL ES debug layerThis log is output when type Enter command on terminal.
(3) Execute Streamline-cli.exeC:\Program Files\Arm\Arm Performance Studio 2024.1\streamline>Streamline-cli.exe -pa <apc folder>\unityapp_003.apc --directory=<log folder>\PerformanceAdvisorLog --application-name="unityapp_003" --device-name="DevDevice"Importing capture...Fetching data...Preparing report type html...WARNING: The series "Draw calls" could not be found.Ensure that you are running a capture made with a matching version of Streamline and that all the expression values in your report configuration are correct.WARNING: The series "Draw calls" could not be found.Ensure that you are running a capture made with a matching version of Streamline and that all the expression values in your report configuration are correct.Problems were found preparing html report:WARNING: Build name not provided. You can add this as a command line argument (use --build-name).WARNING: Build timestamp not provided. You can add this as a command line argument (use --build-timestamp).ERROR: Cannot find any frames. Please refer to the user guide for methods of providing frame data to Performance Advisor.
Please help to share solution
Thanks Hiroki, yes so we support both Vulkan and GLES API. In streamline_me.py you can specify which API you would like to enable the debug layers for, in the output you sent, you can see GLES is being used as it says: "Installing OpenGL ES debug layer". To specify a specific layer you can use: --lwi-api. Try this with both --lwi-api "gles" and --lwi-api "vulkan" and see if you can get frame data. It is worth pointing out that in the newer version of Performance Studio, streamline_me.py automatically gets data for both GLES and Vulkan, and therefore specifying --lwi-api is not required. Let me know how this goes! Connor
Hi Connor,Thanks for your explanation.
Arm Performance Studio : 2024.1I can see framerate related data("Frame Rate", "Workloads / Frame", "Draw Calls / Frame") on Streamline GUI by applying "--lwi-api vulkan" option, and generate Performance Advisor successfully ! It means I guess my Unity sample app is using Vulkan not GLES API.Arm Performance Studio : 2024.5I also can get framerate related data without "--lwi-api" option.
I understand that I used old version Streamline and I referred latest version Streamline documentation, that's why I faced this issue.Thanks so much for updating to useful tools.
BTW, in case of System profiling, framerate related data couldn't be got in my understanding.It will be supported in the future for System profiling ?
Best Regards