summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/GraphicsModSystem
diff options
context:
space:
mode:
authorJosJuice <josjuice@gmail.com>2025-12-28 14:47:40 +0100
committerJosJuice <josjuice@gmail.com>2026-02-04 21:35:22 +0100
commitb0e2a28e14b28acecbc3648efcaaa0f04c974967 (patch)
tree0821f96fa47a3404215e5ddc8ea56773fe26af54 /Source/Core/VideoCommon/GraphicsModSystem
parent0ce95299f6f16b7994592900bd3efc1849c58845 (diff)
Core: Combine guest pages into host pages larger than 4K
Most systems that Dolphin runs on have a page size of 4 KiB, which conveniently matches the page size of the GameCube and Wii. But there are also systems that use larger page sizes, notably Apple CPUs with 16 KiB page sizes. To let us create host mappings on such systems, this commit implements combining guest mappings into host page sized mappings wherever possible. For this to work for a given mapping, not only do four (in the case of 16 KiB) guest mappings have to exist adjacent to each other, but the corresponding translated addresses also have to be adjacent, and the lowest bits of the addresses have to match. When I tested a few games, the following percentages of guest mappings met these criteria: Spider-Man 2: 0%-12% Rogue Squadron 2: 39%-42% Rogue Squadron 3: 28%-41% So while 16 KiB systems don't get as much of a performance improvement as 4 KiB systems, they do still get some improvement.
Diffstat (limited to 'Source/Core/VideoCommon/GraphicsModSystem')
0 files changed, 0 insertions, 0 deletions