Skip to content

Commit df15257

Browse files
committed
add cpu/gpu basic status report in logs at startup
1 parent 45da8dc commit df15257

1 file changed

Lines changed: 16 additions & 0 deletions

File tree

src/Core/Program.cs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using FreneticUtilities.FreneticDataSyntax;
22
using FreneticUtilities.FreneticExtensions;
33
using FreneticUtilities.FreneticToolkit;
4+
using Hardware.Info;
45
using LiteDB;
56
using Microsoft.Extensions.Hosting;
67
using Microsoft.Extensions.Logging;
@@ -162,6 +163,21 @@ public static void Main(string[] args)
162163
CurrentGitDate = "Git failed to load";
163164
}
164165
}));
166+
waitFor.Add(Utilities.RunCheckedTask(async () =>
167+
{
168+
NvidiaUtil.NvidiaInfo[] gpuInfo = NvidiaUtil.QueryNvidia();
169+
SystemStatusMonitor.HardwareInfo.RefreshMemoryStatus();
170+
MemoryStatus memStatus = SystemStatusMonitor.HardwareInfo.MemoryStatus;
171+
Logs.Init($"CPU Cores: {Environment.ProcessorCount} | RAM: {new MemoryNum((long)memStatus.TotalPhysical)} total, {new MemoryNum((long)memStatus.AvailablePhysical)} available");
172+
if (gpuInfo is not null)
173+
{
174+
JObject gpus = [];
175+
foreach (NvidiaUtil.NvidiaInfo gpu in gpuInfo)
176+
{
177+
Logs.Init($"GPU {gpu.ID}: {gpu.GPUName} | Temp {gpu.Temperature}C | Util {gpu.UtilizationGPU}% GPU, {gpu.UtilizationMemory}% Memory | VRAM {gpu.TotalMemory} total, {gpu.FreeMemory} free, {gpu.UsedMemory} used");
178+
}
179+
}
180+
}));
165181
RunOnAllExtensions(e => e.OnPreInit());
166182
timer.Check("Extension PreInit");
167183
Logs.Init("Prepping options...");

0 commit comments

Comments
 (0)