Ranting on Intel's HEDT, performance, monitoring, stability, internet hype and real world usage.
There's usually two choices nowadays when it comes Operating Systems, it's either Linux or Windows, let's forget there is Apple in the game because it is so far from my own experience as an absolute non-mac user, I pretend it does not exist. I am not saying it is bad, but I've mostly built my own PCs, and picking your hardware, building them and overclocking them was never a choice with Apple products. They sure have great tools and are popular, but its an entirely different ecosystem from what most of us are used to. Yes, I say most of us because Apple does have a small market share in the Desktop OS area, it is not a secret.
Hardcore Linux users are always preaching, I know the community pretty well, I am part of it, but I am not a 'diehard evangelist'. I deal with Linux daily, as a user or sysadmin, I know my way around, UFW, bash, perl, I am not into vi/vim, I definitely prefer MicroEMACS, but I've been using Linux regularly for almost 20 years now, been through a lot, yes, I hate when they break the userspace and some of my stuff stop working. Yes, I've been there. I've installed Gentoo, locked myself out of UFW, broke the kernel quite a lot, rm -rf as root and all that.
Why did I just summarize my whole Linux experience? Because I know my community, my friends and a lot of readers. Usually programmers and Linux Enthusiasts are gatekeepers and quite annoying. I am a C programmer, whenever I say something about Windows, people already presume you don't even know how to power your own PC, let alone have an opinion.
Why do I use ALSO use Windows? the main reason is gaming, it is simply better, driver support especially for nVidia is much better, DirectX is better. Vulkan is getting there, but DX12 does deliver. Gaben (from Valve) and many very talented people are working hard, trying to make Gaming on Linux better, and maybe it will be better one day, I definitely want it, but as of 2022, Windows is the primary option for now, might change in the future, but not now.
Basically I can do anything on both operating systems, no issues at all, but one thing that Microsoft is terrible at is Performance Monitoring, it is definitely much, much easier on Linux, easier to write your own software and collect all the sweet data, god, even Telegraf works well on Linux, their Windows version is a joke.
WMI (Windows Management Instrumentation) is simply bad. It is slow, reading queries take forever, there is a lot of leftover, it is ancient... I mean, it does not work for continuous queries at all. It might be okay for a single query, but if you are constantly pulling into that thing, you'll run into problems very soon. Perfmon is also weird and bloated.
Intel HEDT users will understand it, one problem we have with intel HCC HEDT CPU's, especially the 10980XE is that, it is for sure a good CPU, outstanding quad channel memory performance, lots of sweet PCI-Express lanes, the best motherboards out there with state of the art VRM's and cool onboard features such as Thunderbolt, 10Gbit lan just to name a few... BUT (there is a big BUT). There are issues with the cache architecture and the Mesh Clock frequency, for some reason the Mesh frequency is too low on the HEDT lineup, and we have to overclock it if we want to have lower memory latency and better performance overall, it even helps with single core performance which is something we lack if we want to be competitive with 12/13 gen Intel CPU's or AMD's Ryzen 5000 series.
The X299X platform is extremely powerful, it is a hybrid system that works pretty well if you want to do a lot of stuff at the same time, such as: hosting a lot of virtual machines+compiling code+running 3 different databases while debugging or api hooking, you can do all that at the same time thanks to the high core count and outstanding memory performance (over 100GBPs, no, Dual DDR5 cannot even dream of reaching this kinda of raw output, quad-channel DDR5 will do, but we can't buy that yet.)
But pairing a 10980XE with a RTX 3080 or a Radeon 6950XT and a 240hz monitor is not really the best thing you could do if you are gaming. Skylake-X does not deliver on frames per second, even if you compare it against a much cheaper Ryzen 5 5600X or a Core i5-13600k. The latency, mesh, and single core performance will hold you back a lot.
There's two options, you can have two separated systems (one to work, one to game), or you can overclock the hell out of your Skylake-X. And I, chose both options. I have a separated system that is better for gaming, but I also overclocked my X299X a lot just for the fun.
There's a separated article coming about the specifics of Skylake-X archictecture, especially the high core count CPU's and how to properly overclock it, but in a nutshell you should care a lot about frequency, you'll see noticieable performance gains by going over 4.5GHz, the sweetspot is at 4.9Ghz. Mesh OC is also important but you'll stop at 3.2Ghz, and it is hard to get there without massive tweaks to voltage, vccin, etc... and for Memory O.C., latency is better than bandwidth.
So, if you are like thousands of overclockers, who feel they are hitting a hard wall when trying to grab performance data @ windows, (on the background) and flush it to analyze later or in real time, I've been there. For now, the best option I have is: Using HWiNFO and reading the shared memory and writing to either Influx or my own database. For Visualization (realtime data) Grafana is not good at all, since it updates every 1000ms at best, and when we are overclocking, it is important to have instant input/output of our telemetry data.
To solve this issue, I wrote this Tiny library that will definitely help you on your overclocking efforts and overall windows performance monitoring. It is called HWHash and you should take a look if you like pretty graphs and want to have a cool desktop like we can usually have on Linux Desktop, but now on Windows too.