[core/nvnflinger] Rewrite GetBufferHistory #484

Closed
SDK-Chan wants to merge 4 commits from rewrite-GetBufferHistory into master
Member

This rewrite should improve performance with the buffer history by changing the complexity level to O(1).
Replace std::vector with std::array to ensure that elements are allocated on the stack rather than on the free store.
Avoid expensive resizing at runtime.
Adjust buffer states at the right locations.
Tightly pack the BufferHistoryInfo struct to ensure that it only occupies 28 bytes.

This rewrite should improve performance with the buffer history by changing the complexity level to O(1). Replace std::vector with std::array to ensure that elements are allocated on the stack rather than on the free store. Avoid expensive resizing at runtime. Adjust buffer states at the right locations. Tightly pack the BufferHistoryInfo struct to ensure that it only occupies 28 bytes.
SDK-Chan added 2 commits 2025-09-14 14:13:07 +02:00
[cmake] Unbreak FreeBSD building process again.
All checks were successful
eden-license / license-header (pull_request) Successful in 33s
87615f2da1
[core/nvnflinger] Rewrite GetBufferHistory
All checks were successful
eden-license / license-header (pull_request) Successful in 35s
535f438b57
SDK-Chan added 1 commit 2025-09-14 14:14:42 +02:00
Update src/core/hle/service/nvnflinger/buffer_queue_core.cpp
All checks were successful
eden-license / license-header (pull_request) Successful in 38s
b75d722880
Adjust the comments alignment.
MaranBr requested changes 2025-09-14 15:27:39 +02:00
CMakeLists.txt Outdated
@ -468,3 +468,3 @@
find_package(ZLIB 1.2 REQUIRED)
find_package(zstd 1.5 REQUIRED MODULE)
find_package(Boost 1.79.0 REQUIRED headers context system fiber)
find_package(Boost 1.88.0 REQUIRED context system fiber)
Member

Use 1.57.0

Use 1.57.0
SDK-Chan marked this conversation as resolved
SDK-Chan added 1 commit 2025-09-14 17:15:43 +02:00
Update CMakeLists.txt
All checks were successful
eden-license / license-header (pull_request) Successful in 26m23s
7fd9a1fbe4
Downgraded Boost in find_package to version 1.57.0
SDK-Chan added 1 commit 2025-09-14 17:47:23 +02:00
Update src/core/hle/service/nvnflinger/buffer_queue_core.h
All checks were successful
eden-license / license-header (pull_request) Successful in 32s
98805e6312
Adjust buffer_history_pos.
SDK-Chan added 1 commit 2025-09-14 20:26:01 +02:00
Update src/core/hle/service/nvnflinger/buffer_queue_producer.cpp
All checks were successful
eden-license / license-header (pull_request) Successful in 4m20s
950ef1669d
Changed GetBufferHistory to resemble Ryujinx a little bit more in the functionality.
Owner

needs sync + drop cmake commits

needs sync + drop cmake commits
crueter force-pushed rewrite-GetBufferHistory from 950ef1669d to 9464083c72 2025-09-16 18:45:07 +02:00 Compare
Owner

Fixed in #528. Closing.

Fixed in #528. Closing.
Shinmegumi closed this pull request 2025-09-16 19:15:32 +02:00
Some checks failed
eden-license / license-header (pull_request) Failing after 40s
Required
Details

Pull request closed

Sign in to join this conversation.
No description provided.