-
Notifications
You must be signed in to change notification settings - Fork 9
Adds custom dive vulkan consumer, annnotation processor #223
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
third_party/gfxreconstruct/framework/decode/vulkan_dive_consumer_base.cpp
Outdated
Show resolved
Hide resolved
third_party/gfxreconstruct/framework/decode/vulkan_dive_consumer_base.cpp
Outdated
Show resolved
Hide resolved
third_party/gfxreconstruct/framework/decode/vulkan_dive_consumer_base.cpp
Outdated
Show resolved
Hide resolved
third_party/gfxreconstruct/framework/decode/vulkan_dive_consumer_base.cpp
Outdated
Show resolved
Hide resolved
third_party/gfxreconstruct/framework/decode/vulkan_dive_consumer_base.cpp
Outdated
Show resolved
Hide resolved
third_party/gfxreconstruct/framework/decode/vulkan_dive_consumer_base.cpp
Outdated
Show resolved
Hide resolved
third_party/gfxreconstruct/framework/decode/vulkan_dive_consumer_base.h
Outdated
Show resolved
Hide resolved
third_party/gfxreconstruct/framework/decode/annotation_handler.h
Outdated
Show resolved
Hide resolved
third_party/gfxreconstruct/framework/decode/vulkan_dive_consumer_base.cpp
Outdated
Show resolved
Hide resolved
I'm curious, is Also side note, maybe we should have DiveVector in some kind of util directory rather than in dive_core? |
Yes, it is in dive so that the DiveVector could be used. I can move it to the GFXR side instead and just use a regular std::vector. I am not sure about the speed difference between the two. Also agree that a separate dive util directory makes sense. |
third_party/gfxreconstruct/framework/decode/vulkan_dive_consumer_base.h
Outdated
Show resolved
Hide resolved
third_party/gfxreconstruct/framework/decode/vulkan_dive_consumer_base.h
Outdated
Show resolved
Hide resolved
third_party/gfxreconstruct/framework/decode/vulkan_dive_consumer_base.h
Outdated
Show resolved
Hide resolved
third_party/gfxreconstruct/framework/decode/vulkan_dive_consumer_base.h
Outdated
Show resolved
Hide resolved
I'm not sure if it makes a big difference but my instinct is that we should try and group the changes we're making to GFXR, keep it under @wangra-google Do you have any thoughts about code structure for this? Should we prefer our changes to GFXR to be implemented in the Dive source code or in the GFXR subtree? |
Thanks Angela for mentioning this! (I totally forgot to check this part) I think this is a good topic that you should bring into the chatroom for further discussion, but here are some of my thoughts: Option 1: adding into Dive project folder:
Cons:
Option 2: adding into gfxreconstruct subtree folder: Pros:
Cons:
Personally, I am leaning towards Option 1, but I am open for discussion, there could be something that I have not thought of. |
DiveVector<std::unique_ptr<SubmitInfo>> m_submits; | ||
uint64_t m_block_index; | ||
SubmitInfo* m_curr_submit = nullptr; | ||
uint32_t m_command_buffer_count = 0; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe for the members here that are all related can be named similarly. If I understand correctly, at least m_pre_submit_commands
and m_command_buffer_count
are both about the current submit before it's added into the larger m_submits vector. I'm not really sure what m_curr_submit
is for but I see that it's cleared at the same time. I think these three should have a same prefix or some other indicator that they're dealing with the "current" submit.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Renamed to m_current_submit_commands and m_current_submit_command_buffer_count.
Adds a custom dive vulkan consumer and annnotation processor which will be used for the display of vulkan commands on the ui. Follow up pr utilizes the consumer and annotation processor to display the commands in the ui.