1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2025-02-24 13:54:17 +01:00

[dxvk] Use small_vector in submission code

This commit is contained in:
Philip Rebohle 2024-10-18 09:55:11 +02:00
parent 5975dde85f
commit 5a135d7000
2 changed files with 14 additions and 14 deletions

View File

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

View File

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