mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-20 10:25:28 +00:00
Memory manager: buffer uploads (D3D) - Part 1
Manages a single persistently mapped GPU heap which is sub-allocated inside of ring-buffer for uploads. To handle larger buffers without additional unused heaps, ring buffers are created on-demand. BUG=dawn:28 TEST=dawn_unittests Change-Id: Ifc5a1b06baf8633f1e133245ac1ee76275431cc5 Reviewed-on: https://dawn-review.googlesource.com/c/3160 Commit-Queue: Bryan Bernhart <bryan.bernhart@intel.com> Reviewed-by: Kai Ninomiya <kainino@chromium.org>
This commit is contained in:
committed by
Commit Bot service account
parent
79ff8bead9
commit
74e95fff4a
@@ -95,6 +95,7 @@ TEST(SerialQueue, IterateUpTo) {
|
||||
expectedValues.erase(expectedValues.begin());
|
||||
}
|
||||
ASSERT_TRUE(expectedValues.empty());
|
||||
EXPECT_EQ(queue.LastSerial(), 2u);
|
||||
}
|
||||
|
||||
// Test ClearUpTo
|
||||
@@ -110,6 +111,7 @@ TEST(SerialQueue, ClearUpTo) {
|
||||
queue.Enqueue(vector3, 1);
|
||||
|
||||
queue.ClearUpTo(0);
|
||||
EXPECT_EQ(queue.LastSerial(), 1u);
|
||||
|
||||
std::vector<int> expectedValues = {9, 0};
|
||||
for (int value : queue.IterateAll()) {
|
||||
@@ -141,3 +143,14 @@ TEST(SerialQueue, FirstSerial) {
|
||||
queue.Enqueue(vector1, 6);
|
||||
EXPECT_EQ(queue.FirstSerial(), 6u);
|
||||
}
|
||||
|
||||
// Test LastSerial
|
||||
TEST(SerialQueue, LastSerial) {
|
||||
TestSerialQueue queue;
|
||||
|
||||
queue.Enqueue({1}, 0);
|
||||
EXPECT_EQ(queue.LastSerial(), 0u);
|
||||
|
||||
queue.Enqueue({2}, 1);
|
||||
EXPECT_EQ(queue.LastSerial(), 1u);
|
||||
}
|
||||
Reference in New Issue
Block a user