cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

trebla
Adept I

Vulkan vkCmdDrawIndexedIndirect crash

Jump to solution

Hi,

I try to use vkCmdDrawIndexedIndirect but without a success.

The program crashes when vkCmdExecuteCommands is just issuing, at vk_icdGetInstanceProcAddr () in amdvlk64.dll.

The crash happens even if I set offset to 0 and drawCount to 0 or 1.

I also tested it on a GTX 750, there it works.

Also it works when I emulate vkCmdDrawIndexedIndirect with vkCmdDrawIndexed calls.

System: Windows 7 SP1 64 bit

Radeon 7870

Lunar SDK 1.0.11.1

Driver version: 16.15.2401.1001

Compiler: gcc 5.3

0 Likes
1 Solution

Accepted Solutions
dwitczak
Staff
Staff

Re: Vulkan vkCmdDrawIndexedIndirect crash

Jump to solution

This appears to be a driver-side issue. To work around it for the time being, please OR cmdBufInfo.flags (pl_basic_thread.cpp::l.137) with VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT.

Many thanks for reporting the problem!

View solution in original post

11 Replies
trebla
Adept I

Re: Vulkan vkCmdDrawIndexedIndirect crash

Jump to solution

I retested this with newer lunar SDK (1.0.13.0), the error still persists.

However I forgot to mention that this occures when using secondary commandbuffers. In a primary one, it worked.

0 Likes
dwitczak
Staff
Staff

Re: Vulkan vkCmdDrawIndexedIndirect crash

Jump to solution

Thank you for the report.

I can't promise I'll be able to find time to look at this today, but I should be able to have a look on Monday.

0 Likes
dwitczak
Staff
Staff

Re: Vulkan vkCmdDrawIndexedIndirect crash

Jump to solution

I'm afraid I am unable to reproduce the issue you describe. A couple of questions I would like to ask at this point:

1) Have you tried running your application with validation enabled? I personally recommend to use the latest master version taken from Validation Layer's project repository, since layer coverage improves on a daily basis.
2) Can you share source code of the application, so that I could have a look at what exactly is happening?

0 Likes
trebla
Adept I

Re: Vulkan vkCmdDrawIndexedIndirect crash

Jump to solution

Validation layer is enabled, there are no warnings/errors prior to the crash. But I will try the latest master version too instead of the Lunar SDK.

I attached the source:

The interesting part is in the Render, BuildCommandBuffers methods in shooter3/vkgx/pl_basic.cpp and the TestIndirectCmd2 method in shooter3/vkgx/pl_basic_thread.cpp.

The source of vkloader is just copied from the Lunar SDK.

0 Likes
dwitczak
Staff
Staff

Re: Vulkan vkCmdDrawIndexedIndirect crash

Jump to solution

Thanks a lot, your cooperation is very much appreciated. Will get back to you on Monday with further feed-back.

0 Likes
dwitczak
Staff
Staff

Re: Vulkan vkCmdDrawIndexedIndirect crash

Jump to solution

One question. Would you mind preparing a Visual Studio-based solution for the project? Alternatively, if that's not possible, a working executable would be very useful. Getting a Code::Blocks project to actually build on my end would be a time-consuming thing to do.

0 Likes
trebla
Adept I

Re: Vulkan vkCmdDrawIndexedIndirect crash

Jump to solution

I prepared a vs2015 project for you. It uses the VULKAN_SDK environment parameter to find the SDK.

0 Likes
dwitczak
Staff
Staff

Re: Vulkan vkCmdDrawIndexedIndirect crash

Jump to solution

Excellent, many thanks. I managed to reproduce the crash here. Will let you know when identify the root cause.

0 Likes
dwitczak
Staff
Staff

Re: Vulkan vkCmdDrawIndexedIndirect crash

Jump to solution

This appears to be a driver-side issue. To work around it for the time being, please OR cmdBufInfo.flags (pl_basic_thread.cpp::l.137) with VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT.

Many thanks for reporting the problem!

View solution in original post