aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlizzie <lizzie@eden-emu.dev>2026-03-31 20:12:16 +0200
committercrueter <crueter@eden-emu.dev>2026-03-31 20:12:16 +0200
commitdd91b41a786a4d0402935f171f2f37e2e7ba5556 (patch)
tree50ef51916449d7fee5150bf381a09fd42b6402bd
parente9f454106905bf535572c92993c5094450fad5a5 (diff)
[core] remove parallel thread remnants that keep calling sysconf() everytime a memory object is created (#3804)
pure spam of calls for _sysconf() Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3804 Reviewed-by: Maufeat <sahyno1996@gmail.com> Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
-rw-r--r--src/core/memory.cpp14
1 files changed, 2 insertions, 12 deletions
diff --git a/src/core/memory.cpp b/src/core/memory.cpp
index 5c57df424c..3a9ea308a8 100644
--- a/src/core/memory.cpp
+++ b/src/core/memory.cpp
@@ -45,11 +45,7 @@ static inline bool AddressSpaceContains(const Common::PageTable& table, const Co
// from outside classes. This also allows modification to the internals of the memory
// subsystem without needing to rebuild all files that make use of the memory interface.
struct Memory::Impl {
- explicit Impl(Core::System& system_) : system{system_} {
- // Initialize thread count based on available cores for parallel memory operations
- const unsigned int hw_concurrency = std::thread::hardware_concurrency();
- thread_count = (std::max)(2u, (std::min)(hw_concurrency, 8u)); // Limit to 8 threads max
- }
+ explicit Impl(Core::System& system_) : system{system_} {}
void SetCurrentPageTable(Kernel::KProcess& process) {
current_page_table = &process.GetPageTable().GetImpl();
@@ -856,13 +852,7 @@ struct Memory::Impl {
Tegra::MaxwellDeviceMemoryManager* gpu_device_memory{};
Common::PageTable* current_page_table = nullptr;
- // Number of threads to use for parallel memory operations
- unsigned int thread_count = 2;
-
- // Minimum size in bytes for which parallel processing is beneficial
- //size_t PARALLEL_THRESHOLD = (L3 CACHE * NUM PHYSICAL CORES); // 64 KB
- std::array<VideoCore::RasterizerDownloadArea, Core::Hardware::NUM_CPU_CORES>
- rasterizer_read_areas{};
+ std::array<VideoCore::RasterizerDownloadArea, Core::Hardware::NUM_CPU_CORES> rasterizer_read_areas{};
std::array<GPUDirtyState, Core::Hardware::NUM_CPU_CORES> rasterizer_write_areas{};
std::array<Common::ScratchBuffer<u32>, Core::Hardware::NUM_CPU_CORES> scratch_buffers{};
std::span<Core::GPUDirtyMemoryManager> gpu_dirty_managers;