-
Notifications
You must be signed in to change notification settings - Fork 25
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: gpuminer initialization #1384
fix: gpuminer initialization #1384
Conversation
@MCozhusheck can you also test the event sending? We want to make sure events are sent on the early startup steps without GPU miner information, but are also send with GPU information later on. |
The GPU miner hardware monitor was being initialized too early causing the app never to recognize the gpu miner later on. Fix the initialization sequence, and only append the gpu miner data to telemetry on demand instead of on telemetry initialization.
6397126
to
39c3553
Compare
Event before GPU detection lacks field {
"app_id": "nBG9^pIoE%$HiIz4LwUJ",
"cpu_name": "Unknown",
"created_at": {
"nanos_since_epoch": 399415213,
"secs_since_epoch": 1736951393
},
"event_name": "checking-latest-version-gpuminer",
"event_value": {
"percentage": 20,
"service": "gpuminer"
},
"gpu_name": "NVIDIA GeForce RTX 2060",
"os": "Linux",
"user_id": "v3,G7Z49mgdwdA2knf8rvWTWk3yP57G,0.8.42,47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU",
"version": "0.8.42"
} Same case for evet sent after GPU detection {
"app_id": "nBG9^pIoE%$HiIz4LwUJ",
"cpu_name": "Unknown",
"created_at": {
"nanos_since_epoch": 903781686,
"secs_since_epoch": 1736951393
},
"event_name": "waiting-for-minotari-node-to-start",
"event_value": {
"percentage": 35,
"service": "minotari_node"
},
"gpu_name": "NVIDIA GeForce RTX 2060",
"os": "Linux",
"user_id": "v3,G7Z49mgdwdA2knf8rvWTWk3yP57G,0.8.42,47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU",
"version": "0.8.42"
} I think CPU hardware detection needs same treatment as GPU where each event sent we ask hardware status. I am not sure which change made this but I can see my events from 2 days ago with correct {
"app_id": "9tBm6bKcWBV4PbCudiws",
"cpu_name": "Intel(R) Core(TM) i7-10750H CPU @ 2.60GHz",
"created_at": {
"nanos_since_epoch": 917006039,
"secs_since_epoch": 1736764883
},
"event_name": "waiting-for-minotari-node-to-start",
"event_value": {
"percentage": 35,
"service": "minotari_node"
},
"gpu_name": "NVIDIA GeForce RTX 2060",
"os": "Linux",
"user_id": "v3,G7Z49mgdwdA2knf8rvWTWk3yP57G,0.8.42,47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU",
"version": "0.8.42"
} |
I think this should be at the beginning of HardwareStatusMonitor::current().initialize().await?; |
It's interesting that the "Event before GPU detection" successfully has the GPU name? I suppose this wasn't the first run. So GPU had already successfully been detected. |
The problem with moving it before the binary downloaders, is that if the GPU hasn't previously been detected (such as first run) then it won't get detected until next restart. For the entire app. |
Updated cpu to be ondemand as well. I'm okay if they aren't present as metrics during the initial syncing. |
Now the `cpu_name' have appeared back in the events. {
"app_id": "9$D%!%Nnebgqy6M$lVlB",
"cpu_name": "Intel(R) Core(TM) i7-10750H CPU @ 2.60GHz",
"created_at": {
"nanos_since_epoch": 500875082,
"secs_since_epoch": 1737017543
},
"event_name": "waiting-for-minotari-node-to-start",
"event_value": {
"percentage": 35,
"service": "minotari_node"
},
"gpu_name": "NVIDIA GeForce RTX 2060",
"os": "Linux",
"user_id": "v3,G7Z49mgdwdA2knf8rvWTWk3yP57G,0.8.42,47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU",
"version": "0.8.42"
} |
Description
The GPU miner hardware monitor was being initialized too early causing the app never to recognize the gpu miner later on. Fix the initialization sequence, and only append the gpu miner data to telemetry on demand instead of on telemetry initialization.
Motivation and Context
GPU Miners were being left undetected on systems that previously detected GPU.
Fixes #1378
How Has This Been Tested?
Manually