separate emu thread
This commit is contained in:
@@ -1462,7 +1462,7 @@ Helper::BatchComposer::BatchComposer()
|
||||
|
||||
void Helper::BatchComposer::begin_batch()
|
||||
{
|
||||
if (!waits[submit_index].empty() || !cmds[submit_index].empty() || !signals[submit_index].empty())
|
||||
if (!waits[submit_index].empty() || !cmds[submit_index].empty() || !signals_[submit_index].empty())
|
||||
{
|
||||
submit_index = submits.size();
|
||||
submits.emplace_back();
|
||||
@@ -1491,8 +1491,8 @@ Helper::BatchComposer::bake(int profiling_iteration)
|
||||
submit = { VK_STRUCTURE_TYPE_SUBMIT_INFO_2 };
|
||||
submit.commandBufferInfoCount = uint32_t(cmds[i].size());
|
||||
submit.pCommandBufferInfos = cmds[i].data();
|
||||
submit.signalSemaphoreInfoCount = uint32_t(signals[i].size());
|
||||
submit.pSignalSemaphoreInfos = signals[i].data();
|
||||
submit.signalSemaphoreInfoCount = uint32_t(signals_[i].size());
|
||||
submit.pSignalSemaphoreInfos = signals_[i].data();
|
||||
submit.waitSemaphoreInfoCount = uint32_t(waits[i].size());
|
||||
submit.pWaitSemaphoreInfos = waits[i].data();
|
||||
|
||||
@@ -1523,7 +1523,7 @@ Helper::BatchComposer::bake(int profiling_iteration)
|
||||
|
||||
void Helper::BatchComposer::add_command_buffer(VkCommandBuffer cmd)
|
||||
{
|
||||
if (!signals[submit_index].empty())
|
||||
if (!signals_[submit_index].empty())
|
||||
begin_batch();
|
||||
|
||||
VkCommandBufferSubmitInfo info = { VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO };
|
||||
@@ -1537,12 +1537,12 @@ void Helper::BatchComposer::add_signal_semaphore(VkSemaphore sem, VkPipelineStag
|
||||
info.semaphore = sem;
|
||||
info.stageMask = stages;
|
||||
info.value = timeline;
|
||||
signals[submit_index].push_back(info);
|
||||
signals_[submit_index].push_back(info);
|
||||
}
|
||||
|
||||
void Helper::BatchComposer::add_wait_semaphore(SemaphoreHolder &sem, VkPipelineStageFlags2 stage)
|
||||
{
|
||||
if (!cmds[submit_index].empty() || !signals[submit_index].empty())
|
||||
if (!cmds[submit_index].empty() || !signals_[submit_index].empty())
|
||||
begin_batch();
|
||||
|
||||
bool is_timeline = sem.get_semaphore_type() == VK_SEMAPHORE_TYPE_TIMELINE;
|
||||
@@ -1556,7 +1556,7 @@ void Helper::BatchComposer::add_wait_semaphore(SemaphoreHolder &sem, VkPipelineS
|
||||
|
||||
void Helper::BatchComposer::add_wait_semaphore(VkSemaphore sem, VkPipelineStageFlags2 stage)
|
||||
{
|
||||
if (!cmds[submit_index].empty() || !signals[submit_index].empty())
|
||||
if (!cmds[submit_index].empty() || !signals_[submit_index].empty())
|
||||
begin_batch();
|
||||
|
||||
VkSemaphoreSubmitInfo info = { VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO };
|
||||
|
||||
@@ -144,7 +144,7 @@ private:
|
||||
VkPerformanceQuerySubmitInfoKHR profiling_infos[Helper::BatchComposer::MaxSubmissions];
|
||||
|
||||
Util::SmallVector<VkSemaphoreSubmitInfo> waits[MaxSubmissions];
|
||||
Util::SmallVector<VkSemaphoreSubmitInfo> signals[MaxSubmissions];
|
||||
Util::SmallVector<VkSemaphoreSubmitInfo> signals_[MaxSubmissions];
|
||||
Util::SmallVector<VkCommandBufferSubmitInfo> cmds[MaxSubmissions];
|
||||
|
||||
unsigned submit_index = 0;
|
||||
|
||||
Reference in New Issue
Block a user