Browse Source
[core/nvnflinger] Rewrite GetBufferHistory (#528)
[core/nvnflinger] Rewrite GetBufferHistory (#528)
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. Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/528 Co-authored-by: SDK-Chan <sdkchan@eden-emu.dev> Co-committed-by: SDK-Chan <sdkchan@eden-emu.dev>pull/320/head
committed by
crueter
No known key found for this signature in database
GPG Key ID: 425ACD2D4830EBC6
6 changed files with 94 additions and 52 deletions
-
19src/core/hle/service/nvnflinger/buffer_queue_consumer.cpp
-
20src/core/hle/service/nvnflinger/buffer_queue_core.cpp
-
28src/core/hle/service/nvnflinger/buffer_queue_core.h
-
69src/core/hle/service/nvnflinger/buffer_queue_producer.cpp
-
3src/core/hle/service/nvnflinger/buffer_queue_producer.h
-
5src/core/hle/service/nvnflinger/buffer_slot.h
Write
Preview
Loading…
Cancel
Save
Reference in new issue