/*** Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved. File: CpuId.BSD.cpp Date: 2022-1-25 Author: Reece ***/ #include #include "HWInfo.hpp" #include "CpuInfo.hpp" #include "CpuInfo.BSD.hpp" #if defined(AURORA_IS_BSD_DERIVED) #include #include #endif #if defined(AURORA_IS_POSIX_DERIVED) #include #include #endif namespace Aurora::HWInfo { void SetCpuTopologyBSD() { auto opt = QueryBsdHwStat(HW_AVAILCPU); if (opt.value_or(0) < 1) { opt = QueryBsdHwStat(HW_NCPU); } gCpuInfo.socket = 1; gCpuInfo.cores = 1; gCpuInfo.threads = opt.value_or(1); // TODO: parse sysctl kern.sched.topology_spec gCpuInfo.maskMTHalf = true; } }