1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2024-11-29 01:24:11 +01:00

[dxvk] Use small_vector in submission code

This commit is contained in:
Philip Rebohle 2024-10-18 09:55:11 +02:00 committed by Philip Rebohle
parent 800792a67d
commit 13da763f9b
2 changed files with 14 additions and 14 deletions

View File

@ -211,9 +211,9 @@ namespace dxvk {
if (isFirst) {
// Wait for per-command list semaphores on first submission
for (const auto& entry : m_waitSemaphores) {
m_commandSubmission.waitSemaphore(entry.fence->handle(),
entry.value, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT);
for (size_t i = 0; i < m_waitSemaphores.size(); i++) {
m_commandSubmission.waitSemaphore(m_waitSemaphores[i].fence->handle(),
m_waitSemaphores[i].value, VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT);
}
}
@ -265,9 +265,9 @@ namespace dxvk {
if (isLast) {
// Signal per-command list semaphores on the final submission
for (const auto& entry : m_signalSemaphores) {
m_commandSubmission.signalSemaphore(entry.fence->handle(),
entry.value, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT);
for (size_t i = 0; i < m_signalSemaphores.size(); i++) {
m_commandSubmission.signalSemaphore(m_signalSemaphores[i].fence->handle(),
m_signalSemaphores[i].value, VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT);
}
// Signal WSI semaphore on the final submission

View File

@ -129,10 +129,10 @@ namespace dxvk {
private:
VkFence m_fence = VK_NULL_HANDLE;
std::vector<VkSemaphoreSubmitInfo> m_semaphoreWaits;
std::vector<VkSemaphoreSubmitInfo> m_semaphoreSignals;
std::vector<VkCommandBufferSubmitInfo> m_commandBuffers;
VkFence m_fence = VK_NULL_HANDLE;
small_vector<VkSemaphoreSubmitInfo, 4> m_semaphoreWaits;
small_vector<VkSemaphoreSubmitInfo, 4> m_semaphoreSignals;
small_vector<VkCommandBufferSubmitInfo, 4> m_commandBuffers;
};
@ -1076,11 +1076,11 @@ namespace dxvk {
DxvkCommandSubmission m_commandSubmission;
std::vector<DxvkFenceValuePair> m_waitSemaphores;
std::vector<DxvkFenceValuePair> m_signalSemaphores;
small_vector<DxvkFenceValuePair, 4> m_waitSemaphores;
small_vector<DxvkFenceValuePair, 4> m_signalSemaphores;
std::vector<DxvkCommandSubmissionInfo> m_cmdSubmissions;
std::vector<DxvkSparseBindSubmission> m_cmdSparseBinds;
small_vector<DxvkCommandSubmissionInfo, 4> m_cmdSubmissions;
small_vector<DxvkSparseBindSubmission, 4> m_cmdSparseBinds;
std::vector<std::pair<
Rc<DxvkDescriptorPool>,