mirror of
https://git.eden-emu.dev/archive/citron
synced 2026-03-23 01:56:08 -04:00
perf(vulkan): increase shader threads for high-end Android devices
- 6+ core devices: Use n-2 threads (e.g., 8-core uses 6 threads) - Lower-end devices: Keep 3 free cores as before - Improves shader compilation speed during game loading Signed-off-by: Zephyron <zephyron@citron-emu.org>
This commit is contained in:
@@ -268,8 +268,11 @@ size_t GetTotalPipelineWorkers() {
|
|||||||
const size_t max_core_threads =
|
const size_t max_core_threads =
|
||||||
std::max<size_t>(static_cast<size_t>(std::thread::hardware_concurrency()), 2ULL);
|
std::max<size_t>(static_cast<size_t>(std::thread::hardware_concurrency()), 2ULL);
|
||||||
#ifdef ANDROID
|
#ifdef ANDROID
|
||||||
// Leave at least a few cores free in android
|
// PROJECT THOR OPTIMIZATION: Shader Threading for high-end Android devices
|
||||||
constexpr size_t free_cores = 3ULL;
|
// For 8-core devices like SD8 Gen 2 (AYN Thor): Use 6 threads (8 - 2 = 6)
|
||||||
|
// For 6-core devices: Use 4 threads (6 - 2 = 4)
|
||||||
|
// For lower-end devices: Leave 3 cores free as before
|
||||||
|
const size_t free_cores = (max_core_threads >= 6ULL) ? 2ULL : 3ULL;
|
||||||
if (max_core_threads <= free_cores) {
|
if (max_core_threads <= free_cores) {
|
||||||
return 1ULL;
|
return 1ULL;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user