google / gapid

Graphics API Debugger
https://gapid.dev
Apache License 2.0
2.2k stars 327 forks source link

Failed to convert proto from *capture.Record to *capture.Capture #1680

Open pusheax88 opened 6 years ago

pusheax88 commented 6 years ago

gapid version 1.0.3

I run

gapit trace -api vulkan -local-app cullingvk -local-args "-f res/ds2.bin -ds octree -m nc -mlsli 5 -poqogpu 1.0" -gapii-device 7041 -start-defer

I get Press enter to start capturing... 14:17:03.954 I: Creating file 'capture.gfxtrace' 14:17:03.954 I: Waiting for connection to localhost:9286... 14:17:04.338 I: EOF: 16B

I analyzed trace and got:

gapit info capture.gfxtrace reading file capture.gfxtrace total file size 16 14:17:45.245 E: Main failed Error: Error resolving capture Cause: Failed to convert proto from capture.Record to capture.Capture Cause: Capture was missing header chunk

How to fix this?

AWoloszyn commented 6 years ago

Your command-line tracing arguments seem suspect

gapit trace -api vulkan -local-app cullingvk -local-args "-f res/ds2.bin -ds octree -m nc -mlsli 5 -poqogpu 1.0" -gapii-device 7041 -start-defer

Specifically, -gapii-device && -local-app being in the same command-line. Also -gapii-device 7041 seems like a very strange serial number.

Is there any reason you are trying this from the command-line instead of the UI? Also does it work in the UI?

pusheax88 commented 6 years ago

I get the same message via UI. It fails to capture stuff. I get no useful messages except error code.

I20180303-100105651[main][server.GapiPaths.checkForTools] Looking for GAPID in /home/pusheax/inst/tools/gapid -> /home/pusheax/inst/tools/gapid/gapis I20180303-100105675[server.ChildProcess-gapis][server.ChildProcess.runProcess] Starting gapis as [/home/pusheax/inst/tools/gapid/gapis, -enable-local-files, -log-file, /tmp/gapis.log, -log-level, Info, -gapir-args, --log /tmp/gapir.log --log-level I, --strings, /home/pusheax/inst/tools/gapid/strings, --gapis-auth-token, X1i9FZNx, --idle-timeout, 60000ms] I20180303-100105804[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapis: 07:01:05.803 I: Logging to: /tmp/gapis.log I20180303-100105995[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapis: Bound on port '44227' I20180303-100105996[server.ChildProcess$LoggingStringHandler][server.GapisProcess.lambda$createStdoutHandler$2] Detected gapis startup on port 44227 I20180303-100106000[server.ChildProcess$LoggingStringHandler][server.GapisProcess.lambda$new$1] Established a new client connection to 44227 I20180303-100106074[server.ChildProcess$LoggingStringHandler][io.grpc.internal.ManagedChannelImpl.] [ManagedChannelImpl@9174f45] Created with target localhost:44227 I20180303-100106343[main][Server.fetchServerInfo] Server info: name: "tenebrae" version_major: 1 version_point: 3 I20180303-100134912[server.ChildProcess-gapit][server.ChildProcess.runProcess] Starting gapit as [/home/pusheax/inst/tools/gapid/gapit, -log-level, Info, trace, -api, vulkan, -out, /home/pusheax/proj/vulkantut/cullingvk_20180303_1001.gfxtrace, -local-app, /home/pusheax/proj/vulkantut/cullingvk, -local-args, -f /home/pusheax/proj/vulkantut/cullingvk/res/ds2.bin -ds octree -m nc -mlsli 5 -poqogpu 1.0, --local-workingdir, /home/pusheax/proj/vulkantut] W20180303-100135230[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: Press enter to stop capturing... I20180303-100135355[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 07:01:35.355 I: Creating file '/home/pusheax/proj/vulkantut/cullingvk_20180303_1001.gfxtrace' I20180303-100135356[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 07:01:35.355 I: Waiting for connection to localhost:9286... I20180303-100135805[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 07:01:35.805 I: EOF: 16B I20180303-100135805[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 07:01:35.805 W: Killing /home/pusheax/proj/vulkantut/cullingvk (context cancelled) I20180303-100135826[server.ChildProcess-gapit][server.ChildProcess.onExit] gapit exited cleanly I20180303-100135826[server.ChildProcess-gapit][server.ChildProcess.shutdown] Shutting down gapit I20180303-100140871[main][models.Capture.loadCapture] Loading capture /home/pusheax/proj/vulkantut/cullingvk_20180303_1001.gfxtrace... I20180303-100144118[main][server.ChildProcess.shutdown] Shutting down gapis I20180303-100144119[server.ChildProcess-gapis][server.ChildProcess.runProcess] Killing gapis W20180303-100144119[server.ChildProcess-gapis][server.ChildProcess.onExit] The gapis process exited with a non-zero exit value: -1 I20180303-100144120[server.ChildProcess-gapis][server.ChildProcess.shutdown] Shutting down gapis I20180303-100144141[OkHttpClientTransport][io.grpc.internal.ManagedChannelImpl.maybeTerminateChannel] [ManagedChannelImpl@9174f45] Terminated

07:01:05.990 I: Adding new device 07:01:05.990 I: New scheduler for device: a8aa785c07a0052ffa366875fa0874a9c4dc26d2 07:01:05.995 I: Starting grpc server

AWoloszyn commented 6 years ago

Can I ask what OS/Driver you are running? I recently found some problems with Linux + Mesa that should hopefully be fixed by an upcoming release.

pdc3 commented 6 years ago

I have a similar issue on window10, 64 bit, NVidia driver 411.70, GPU 930MX, vulkan SDK 1.1.73. What can I do to further investigate this issue. I'm using the GUI. from the log: Starting gapit as [C:\Program Files (x86)\gapid\gapit.exe, -analytics, d6ed01a9-fdab-4b82-874b-4ebc05072d98, -log-level, Info, trace, -api, vulkan, -out, D:\Files\projects\VisualStudio\VulkanTest\gapid\VulkanVideoIO_20181002_1630.gfxtrace, -capture-frames, 5, -local-app, D:\Files\projects\VisualStudio\VulkanTest\x64\Debug\VulkanVideoIO.exe, --local-workingdir, D:\Files\projects\VisualStudio\VulkanTest\x64\Debug]

AWoloszyn commented 6 years ago

It sounds like the application is crashing. Can you run with the disable buffering flag set. That should at least tell you what command caused the failure (and will make it easier for us to determine what the cause is).

pdc3 commented 6 years ago

Hi, Thanks for the fast response. I don’t see a difference, where can I find the command ? Does this screenshot helps ? [cid:image001.png@01D45A72.E53B3020]

From: Andrew Woloszyn [mailto:notifications@github.com] Sent: dinsdag 2 oktober 2018 17:06 To: google/gapid Cc: Decherf, Patrick; Comment Subject: Re: [google/gapid] Failed to convert proto from capture.Record to capture.Capture (#1680)

It sounds like the application is crashing. Can you run with the disable buffering flag set. That should at least tell you what command caused the failure (and will make it easier for us to determine what the cause is).

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/google/gapid/issues/1680#issuecomment-426309382, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Apwiz6aVvy0LuTYV_PTZEJ9ddvHLvzYnks5ug4DrgaJpZM4SYYdx.

This message is subject to the following terms and conditions: MAIL DISCLAIMERhttp://www.barco.com/en/maildisclaimer

pdc3 commented 6 years ago

And this is what is added to the log:

I20181002-170739586[server.ChildProcess-gapit][server.ChildProcess.runProcess] Starting gapit as [C:\Program Files (x86)\gapid\gapit.exe, -analytics, d6ed01a9-fdab-4b82-874b-4ebc05072d98, -log-level, Info, trace, -api, vulkan, -out, D:\Barco\BackedUp\Files\projects\VisualStudio\VulkanTest\gapid\VulkanVideoIO_20181002_1707.gfxtrace, -capture-frames, 5, -local-app, D:\Barco\BackedUp\Files\projects\VisualStudio\VulkanTest\x64\Debug\VulkanVideoIO.exe, --local-workingdir, D:\Barco\BackedUp\Files\projects\VisualStudio\VulkanTest\x64\Debug] W20181002-170740887[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: Press enter to stop capturing... I20181002-170740887[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 15:07:40.886 I: Creating file 'D:\Barco\BackedUp\Files\projects\VisualStudio\VulkanTest\gapid\VulkanVideoIO_20181002_1707.gfxtrace' I20181002-170740895[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 15:07:40.895 I: Waiting for connection to localhost:9286... I20181002-170742001[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 15:07:42.001 I: Capturing: 16B in 0s I20181002-170742903[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 15:07:42.903 I: Capturing: 16B in 1s I20181002-170743904[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 15:07:43.904 I: Capturing: 16B in 2s I20181002-170744905[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 15:07:44.905 I: Capturing: 16B in 3.001s I20181002-170745905[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 15:07:45.905 I: Capturing: 16B in 4.002s I20181002-170746906[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 15:07:46.906 I: Capturing: 16B in 5.002s I20181002-170747907[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 15:07:47.907 I: Capturing: 16B in 6.003s I20181002-170748688[main][server.GapitTraceProcess.stopTracing] Attempting to end the trace. I20181002-170748689[main][models.Capture.loadCapture] Loading capture D:\Barco\BackedUp\Files\projects\VisualStudio\VulkanTest\gapid\VulkanVideoIO_20181002_1707.gfxtrace... I20181002-170748691[server.ChildProcess$LoggingStringHandler][server.ChildProcess$LoggingStringHandler.lambda$new$0] gapit: 15:07:48.690 I: Stop: 16B I20181002-170749103[server.ChildProcess-gapit][server.ChildProcess.onExit] gapit exited cleanly I20181002-170749103[server.ChildProcess-gapit][server.ChildProcess.shutdown] Shutting down gapit I20181002-170749555[Thread-3][util.Crash2ExceptionHandler$1.run] Crash Report Uploaded Successfully; Crash Report ID: 4a48b54c27d1c06a

From: Decherf, Patrick Sent: dinsdag 2 oktober 2018 17:11 To: 'google/gapid' Subject: RE: [google/gapid] Failed to convert proto from capture.Record to capture.Capture (#1680)

Hi, Thanks for the fast response. I don’t see a difference, where can I find the command ? Does this screenshot helps ? [cid:image001.png@01D45A73.E821B8D0]

From: Andrew Woloszyn [mailto:notifications@github.com] Sent: dinsdag 2 oktober 2018 17:06 To: google/gapid Cc: Decherf, Patrick; Comment Subject: Re: [google/gapid] Failed to convert proto from capture.Record to capture.Capture (#1680)

It sounds like the application is crashing. Can you run with the disable buffering flag set. That should at least tell you what command caused the failure (and will make it easier for us to determine what the cause is).

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/google/gapid/issues/1680#issuecomment-426309382, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Apwiz6aVvy0LuTYV_PTZEJ9ddvHLvzYnks5ug4DrgaJpZM4SYYdx.

This message is subject to the following terms and conditions: MAIL DISCLAIMERhttp://www.barco.com/en/maildisclaimer

AWoloszyn commented 6 years ago

It seems your email reply to the github issue has not attached the image.

It looks like your issue may be fixed in a newer version of GAPID however. I will try and get a new release out very soon, in hopes that fixes your issue.

pdc3 commented 6 years ago

Thanks , The text on the screenshot is “ Error resolving capture, cause: Failed to convert proto from capture.Record to capture.Capture Cause:Capture was missing header chunk. The *.gfxtrace file is only 16 bytes.

Ps: I didn’t install the adb, I suppose the adb is not needed if I work on a desktop (and not on android). Correct ?

Thanks Patrick.

From: Andrew Woloszyn [mailto:notifications@github.com] Sent: dinsdag 2 oktober 2018 17:27 To: google/gapid Cc: Decherf, Patrick; Comment Subject: Re: [google/gapid] Failed to convert proto from capture.Record to capture.Capture (#1680)

It seems your email reply to the github issue has not attached the image.

It looks like your issue may be fixed in a newer version of GAPID however. I will try and get a new release out very soon, in hopes that fixes your issue.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/google/gapid/issues/1680#issuecomment-426317301, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ApwizxRewihGun9tTx93fUk8re6uoJsTks5ug4XWgaJpZM4SYYdx.

This message is subject to the following terms and conditions: MAIL DISCLAIMERhttp://www.barco.com/en/maildisclaimer

AWoloszyn commented 6 years ago

That is correct, for Desktop, you do not need ADB installed.

AWoloszyn commented 6 years ago

We have release v1.2.0 of GAPID, would you mind trying that and letting me know if that solved your issue?

Doctoror commented 6 years ago

The same happening for me running 1.2.0, I am using UI. Captured trace for OpenGL ES, not Vulkan as labeled in this issue.

SambeauWang commented 5 years ago

The same happening for me running 1.5, I am debuging a game. My Phone is HUAWEI P20(GPU-Mali-G72). Captured trace for OpenGL ES, not Vulkan as labeled in this issue. But When I uncheck the option("Trace From Begining"), It is not error. But It is too big for debuging.