Intel® Graphics Performance Analyzers (Intel® GPA)
Improve your game's performance by quickly specifying problem areas

Application executable crashes when I click start in GPA Monitor

Schulenburg__Bernie
1,659 Views

Hi,

I am trying to analyze a rust executable (Vulkan based).

When I start the executable from command line it works fine.

But when starting it from GPA Monitor it crashes instantly.

I made sure all reference files the executable needs are placed correctly in the working directory. Verified this by it being able to run from command line via 

$./my-rust-executable

I also tested GPA Montor with a benchmark application ("glmark2") which works fine. So at least I get to see how it's supposed to work, when it works.

So I guess my questions are.. is there any log I can look into, to see what GPA Monitor fails at when launching my specific executable?

I have seen a bunch of log-related files in 

my_user@my_machine:~/GPA/

but couldn't really make heads and tails of it.

Or else any other thing that I might not be aware of?

Below are my specs..

Operating System:
    Name: Ubuntu 18.04.3 LTS
    Locale: en_US

CPU Information:
    Architecture: x64
    Cores count: 2

GPU Information:
    Name: Intel HD Graphics 520
    Vendor id: 0x8086
    Product id: 0x1916

Machine:
    Name: stansislaus
    Memory: 15953 MB
    Screen: 1920x1080, 24 bit

Graphics Performance Analyzers:
    Version: 19.2.343286

 

0 Kudos
5 Replies
Giselle_G_Intel
Employee
1,659 Views

Hi Bernie,

Can you tell me what version of the Vulkan Runtime and SDK you have installed on your machine?

Secondly, have you selected "Stream Capture Vulkan" from the dropdown (next to the start button) before launching?

Are able to share your executable with us to do some debugging? (through a private message)

You can also run the application through command line and turn on a logging layer to do so you'll need to navigate to the folder where Intel® GPA is installed on your machine and use: ./gpa-injector <path to app> -w <working directory> --layer capture --layer hud-layer -v debug 

This should allow you to see logging in the terminal. It won't show you exactly where the issue is happening within the app, but it should be able to help you narrow things down a bit (and where Intel® GPA might be crashing).

0 Kudos
Bond__Simon
Beginner
1,659 Views

Hey Giselle

I'm seeing the same behaviour for a fairly simple OpenGL application, albeit on a not-strictly-supported distro: 

Operating System:
    Name: elementary OS 5.0 Juno
    Locale: en_CA

CPU Information:
    Architecture: x64
    Cores count: 2

GPU Information:
    Name: Intel Device 3ea0 (it's actually an 8th i3 with 630 graphics.)
    Vendor id: 0x8086
    Product id: 0x3EA0

Machine:
    Name: simon-ideapad
    Memory: 3815 MB
    Screen: 3286x1083, 24 bit

Graphics Performance Analyzers:
    Version: 19.3.347996


Launching from Graphics Monitor the process segfaults immediately. 

Nov 01 18:18:41 simon-ideapad kernel: NativeTest[10853]: segfault at 0 ip 0000000000000000 sp 00007fff4dec2198 error 14 in NativeTest[5633647c8000+59000]
Nov 01 18:18:41 simon-ideapad kernel: Code: Bad RIP value.

However when I followed your instruction to run "./gpa-injector ...." the application launches fine and the following output is displayed:

$ ./Streams/gpa-injector ~/NativeTest -w ~/ --layer capture --layer hud-layer -v debug
[GPA] I 10178 Using working dir = /home/simon/
[GPA] D 10178 Argv[0] = /home/simon/NativeTest
[GPA] I 10178 INITIALIZE: NativeTest
[GPA] I 10178 Found layer: /opt/intel/gpa/Streams/layers/libhud-layer-x64.so
[GPA] I 10178 HUD Layer loaded!
[GPA] I 10178 Found layer: /opt/intel/gpa/Streams/layers/libcapture-x64.so
[GPA] I 10178 PageTracker: enabling default tracking
[GPA] I 10178 Capture layer loaded
[GPA] I 10178 Hooking Posix...done
[GPA] I 10178 Hooking Vulkan...done

There's no actual HUD rendered and I can't Ctrl+Shift+C to capture anything however.. I'm not sure if that's to be expected running gpa-injector manually like this, or if the elementary OS + whatever driver happens to be on here is destined to disappoint. 

I'm not a linux guy, is there a chance of getting GPA to work on this config do you think? Or do I have to reformat and load on Ubuntu? I'm simply trying to figure out why a bit of geometry is rendering fine under Windows but not on Linux, despite the exact same code running on both platforms.

Many thanks

- Simon

p.s. I think emoji chars break the website.

0 Kudos
Giselle_G_Intel
Employee
1,659 Views

Hey Simon,

There are two issues that could be happening.

  • One: the commands I provided were specifically for stream capturing, which is only supported for Vulkan applications. Stream capture will produce a folder or file in .../Documents/GPA that can be opened in Frame Analyzer. Because OpenGL is not supported, no folder should have been created and the HUD will not show up on the app as it is not being properly hooked by Intel® GPA's injector.
  • Two: the unsupported OS. There is a chance that Intel® GPA could work with elementary OS but since it is not officially supported, there is no guarantee. 

Some things you can try:

  • Turn on auto-detect and launch the application and take a frame capture from System Analyzer
  • Run the sample application from Graphics Monitor to test if there are any issues in the environment

 

0 Kudos
Bond__Simon
Beginner
1,659 Views

Thanks for that Giselle! Apologies for the late followup, I didn't get any reply notification :)

I could be blind but I didn't spot an auto-detect option in any of the GPA apps or in the docs, and running System Analyzer simply shows global CPU/RAM metrics. Not to worry though I think I'm just wasting your time with this elementaryos. Thanks anyway!

0 Kudos
Giselle_G_Intel
Employee
1,659 Views

Hey Simon,

You're welcome, though I'm sorry that I couldn't be of more use! Let me know how I can help you out in the future.

Best,

Giselle

0 Kudos
Reply