The Linux Thread - The Autist's OS of Choice

Is there a "standard" way of measuring the performance of a Linux installation versus other operating systems installed on the same hardware? Or one that you guys would recommend?

I've noticed my CPU scores about 5% higher in CPU benchmarks on Linux than on Windows, but I'm not sure if the results are invalidated by the platform jump.

Edit: In retrospect, I'm not sure what I was asking for. The purpose of a cross-platform benchmark is...to compare performance across platforms in a standardized test. So based on that, I guess the true improvement (on geekbench, at least) is ~5% plus a sense of pride and accomplishment.

The other (potential) improvements of working on my compiled-from-source Linux installation are much harder to measure because those improvements largely manifest over exceedingly short time frames, like the delay between keypress or mouse movement and on-screen feedback.

They're also hard to specifically attribute to compilation, as opposed to some other factor like a kernel tweak or the fact that I'm not using software compositing in Linux. Unfortunately, you can't really test any one variable in isolation (I don't know if it's even possible to turn off compositing in Windows 10).

Anyway, I'm happy with the improvement in perceived performance. The benchmark difference shows empirically it's not just the placebo effect, even if it's partly (or mostly) the placebo effect.
 
Last edited:
  • Feels
  • Like
Reactions: Yotsubaaa and Aidan
I've noticed my CPU scores about 5% higher in CPU benchmarks on Linux than on Windows, but I'm not sure if the results are invalidated by the platform jump.
Linux CFS CPU scheduler often gets good values at non-interactive batch-kind-of tasks, (like CPU benchmarks) while Windows' scheduler seems to be tweaked towards interactive tasks with lower throughput but higher responsiveness which makes sense considering what that OS is used for. Or to say it simply - the benchmark probably has to compete for CPU time more often in windows than in linux. That difference in CPU benchmarks you got there doesn't really surprise me but it is actually difficult to make a straightforward comparison between such different OSes because they do handle the hardware quite differently. Kernel options mostly affecting this would be CFS scheduler configuration (which can be tweaked at runtime) and kernel configuration regarding ticks, timer frequency, kernel preemption and the like. There's also several homebrew replacement CPU schedulers which all promise better, windows like responsiveness but can be sort of hit-and-miss and hard to compare to each other and do exhibit sometimes buggy behavior. Torvalds doesn't like them. I do think the complaint that the default Linux Desktop experience doesn't feel as smooth and interactive as windows in all workloads has merit.

tl;dr - the difference is probably not entirely random noise and there are reasons for it and the OSes do things quite differently to make such a difference appear.
 
Last edited:
Is there a "standard" way of measuring the performance of a Linux installation versus other operating systems installed on the same hardware? Or one that you guys would recommend?

I've noticed my CPU scores about 5% higher in CPU benchmarks on Linux than on Windows, but I'm not sure if the results are invalidated by the platform jump.

Edit: In retrospect, I'm not sure what I was asking for. The purpose of a cross-platform benchmark is...to compare performance across platforms in a standardized test. So based on that, I guess the true improvement (on geekbench, at least) is ~5% plus a sense of pride and accomplishment.

The other (potential) improvements of working on my compiled-from-source Linux installation are much harder to measure because those improvements largely manifest over exceedingly short time frames, like the delay between keypress or mouse movement and on-screen feedback.

They're also hard to specifically attribute to compilation, as opposed to some other factor like a kernel tweak or the fact that I'm not using software compositing in Linux. Unfortunately, you can't really test any one variable in isolation (I don't know if it's even possible to turn off compositing in Windows 10).

Anyway, I'm happy with the improvement in perceived performance. The benchmark difference shows empirically it's not just the placebo effect, even if it's partly (or mostly) the placebo effect.
I can answer this, actually.

It's core affinity. Windows 10 has SO MUCH SHIT running in the background that it actually screws with it's ability to properly schedule jobs to cores to make optimal use of cpu cache. Experiment you probably don't have time to do: Install a completely vanilla copy of windows 10 and do not connect it to the internet. Most of it's bloatware processes will remain off and you will see a similar performance boost. More of a benefit to single threaded apps than multi.

Additionally, in SOME applications on a standard windows install you can get slightly higher performance by locking applications to cores. I've had to do that with some games before that were reacting badly to high core counts. For most applications however it's simply not worth the trouble.
 
The Zoom Client for Linux is the worst thing ever. It doesn't reliably open meeting links or breakout rooms. It eats like 5 gigabytes of RAM. It always chooses the wrong camera and microphone, no matter how many times I specify otherwise in settings. It is the ONE APPLICATION I have installed on my computer that REGULARLY FREEZES and CRASHES my desktop environment. Whoever wrote this shit needs to have lemon juice squirted up his piss-hole.
 
I can answer this, actually.

It's core affinity. Windows 10 has SO MUCH SHIT running in the background that it actually screws with it's ability to properly schedule jobs to cores to make optimal use of cpu cache. Experiment you probably don't have time to do: Install a completely vanilla copy of windows 10 and do not connect it to the internet. Most of it's bloatware processes will remain off and you will see a similar performance boost. More of a benefit to single threaded apps than multi.

Additionally, in SOME applications on a standard windows install you can get slightly higher performance by locking applications to cores. I've had to do that with some games before that were reacting badly to high core counts. For most applications however it's simply not worth the trouble.

I've got one for you. Install a vanilla copy of Windows 10 and connect to the internet. Don't install anything else but wire shark. Get it to sniff all ports. Leave the computer for an hour. Don't touch anything. Don't have a browser open. Just let the computer sit there with wire shark running.
 
Last edited:
Linux CFS CPU scheduler often gets good values at non-interactive batch-kind-of tasks, (like CPU benchmarks) while Windows' scheduler seems to be tweaked towards interactive tasks with lower throughput but higher responsiveness which makes sense considering what that OS is used for.
I'm still new to all this, but that makes sense. What you're saying reminds me of explanations I've read about RISC vs. CISC in relation to ARM vs x86_64, even though architecture isn't relevant in my case because I'm using the same machine (powerlevel: I'm using an x86_64 processor).

Interestingly, the Windows tweaking you've described would run counter to the (supposedly) improved snappiness/responsiveness on Linux that I've described.

Or to say it simply - the benchmark probably has to compete for CPU time more often in windows than in linux.
I don't think I understand exactly what you mean by this. Are you saying that, on Windows, the scheduler might take CPU time away from the benchmark so that CPU time can be used to, say, respond to user input events? Could you point me to something that would help me understand?

I can answer this, actually.

It's core affinity. Windows 10 has SO MUCH SHIT running in the background that it actually screws with it's ability to properly schedule jobs to cores to make optimal use of cpu cache.
I think most people, including Windows users, would consider "Windows 10 has SO MUCH SHIT" a truism. To put this in context with the scheduler: I guess there's so much bloatware that no amount of Windows scheduling optimization can overcome it. So even if the Windows scheduler is better optimized for responsiveness, those optimizations are made moot by Windows' sheer bloat? Other than under some wildly impractical academic conditions like what you described in the below quote, I can't see how it's possible to remove enough Windows bloat to make Windows feel snappier than my Linux installation.

Experiment you probably don't have time to do: Install a completely vanilla copy of windows 10 and do not connect it to the internet. Most of it's bloatware processes will remain off and you will see a similar performance boost. More of a benefit to single threaded apps than multi.
I'm impressed if you've actually tried this.
 
I've got one for you. Install a vanilla copy of Windows 10 and connect to the internet. Don't install anything else but wire shark. Get it to sniff all ports. Leave the computer for an hour. Don't touch anything. Don't have a browser open. Just let the computer sit there with wire shark running.
Oh, I'm aware. It's horrifying.

I guess there's so much bloatware that no amount of Windows scheduling optimization can overcome it. So even if the Windows scheduler is better optimized for responsiveness, those optimizations are made moot by Windows' sheer bloat? Other than under some wildly impractical academic conditions like what you described in the below quote, I can't see how it's possible to remove enough Windows bloat to make Windows feel snappier than my Linux installation.
Basically. Task manager lies to you. You have 250-300 processes running at any given time and there's not a hell of a lot you can do about it (without potentially breaking your system) and even though they're 'not running' cpu still has to poll them for scheduling in case they do run. It's a 'neglegable' amount of time that users 'won't notice', but it screws with turbo boost and other single core clock speed bumps.

I'm impressed if you've actually tried this.
I have actually, but only by opportunity. I had to set up some windows copies for testing and I decided to do a before/after comparison while I had the chance. Both were clean installs, but only one install got connected online and did it's whole BOATWARE ACTIVATE! nonsense.
 
Interestingly, the Windows tweaking you've described would run counter to the (supposedly) improved snappiness/responsiveness on Linux that I've described.
As has been said, Windows is also loaded down with a whole lot of crap.
I don't think I understand exactly what you mean by this. Are you saying that, on Windows, the scheduler might take CPU time away from the benchmark so that CPU time can be used to, say, respond to user input events? Could you point me to something that would help me understand?
Windows implements scheduling quite differently to Linux, more geared to staying responsive at any cost and not necessarily giving all tasks "fair" shares, contrary to what the Linux' scheduler attempts, also sacrificing throughput if necessary. This used to make the desktop experience in Linux a pain if you had many heavy hitters running at once but has been fixed somewhat in recent years and the current-day CFS scheduler really isn't that bad even for interactive loads. It really is a big but fuzzy topic and every OS has a different "belief" in how scheduling should look like. The increasing complexity of modern CPUs, their caches, core groupings and inter-core latencies didn't exactly make that topic easier. You can absolutely wreck task performance just by moving it back and forth between the "wrong" cores and trashing the caches, depending on CPU, for example. There's a lot of wasted performance in todays OS landscape happening here. On top of that, even in the year of our lord 2021 lots of applications do not take advantage of multi-core systems the proper way.

It's way too big to cover it here, but a good starting point on the importance of good scheduling I'd look into the CFS documentation and also Kolivas work into the brainfuck scheduler as replacement for the Linux kernel. This is actually relatively old work but a good starting point if you want to understand schedulers and their importance, as it is relatively simple.
 
It's way too big to cover it here, but a good starting point on the importance of good scheduling I'd look into the CFS documentation and also Kolivas work into the brainfuck scheduler as replacement for the Linux kernel. This is actually relatively old work but a good starting point if you want to understand schedulers and their importance, as it is relatively simple.
Kernel options mostly affecting this would be CFS scheduler configuration (which can be tweaked at runtime) and kernel configuration regarding ticks, timer frequency, kernel preemption and the like.
Thanks for pointing me to the CFS documentation. I wouldn't have known who Kolivas is, either.

I've been digging around the 5.8 kernel for relevant settings, and I'm really surprised how little documentation there is for a lot of settings. Then again, kernel customization isn't about to start trending on Twitter.

Anyway...aside from the more general options, like specifying your processor type, so far I've got:
  • CONFIG_PREEMPT=y
  • CONFIG_SCHED_AUTOGROUP=y
  • CONFIG_JUMP_LABEL=y
  • CONFIG_HZ_PERIODIC=y
Plus turning off various debugging options (e.g., CONFIG_DEBUG_KERNEL=n).

I don't quite understand the tradeoffs of using BFQ for IO scheduling vs. just deselecting everything in that section. But one of those is definitely lower-latency than the default.

The clearest impact, by far, is between composition pipeline on vs. off. But I think that's just an X11 problem and not a Linux problem.
 
Recently decided I've had enough of Windows's shit and installed Linux on my old gaming PC. First time I dual booted.
Was stupid easy - plugged in a new hard drive, plugged out the old ones, installed linux on the new one, plugged the old one back in. Just Werkz + I can access all the files on the old windows hard drive.
Can't believe it took me so long to do this. If there's anyone on this thread who's still reticent, don't be.
Edit: not my first linux machine by any stretch, just first migration. Nothing got messed up besides the network card not freeing the static IP without a complete shut down.
 
Exquisite friends, I am seriously considering moving onto Linux - alas, I am an old man stuck in his ways, and a gamer to boot. Which Operating System would you fine Ladies and Gentlemen recommend? I'm aware the question is as broad as the horizon, but any hints and pointers would be appreciated.
 
Exquisite friends, I am seriously considering moving onto Linux - alas, I am an old man stuck in his ways, and a gamer to boot. Which Operating System would you fine Ladies and Gentlemen recommend? I'm aware the question is as broad as the horizon, but any hints and pointers would be appreciated.
I'm a few months ahead of you, and I found this thread to be a nice launching pad for getting a feel of what's out there. Would recommend starting at the beginning and searching for terms / distributions you see mentioned that you aren't familiar with. It's cool to be able to re-read and actually understand a conversation I found incomprehensible the first time around.

I started out by installing Arch and that's what I would recommend. Just to see what I might have missed out on, I also tried some other distributions (e.g., Manjaro, Mint) that come bundled with a bunch of packages in the name of user-friendliness. I actually found these more difficult to work with because I had to fight against choices the distribution made on my behalf (Debian, for example, will start you out with Nouveau drivers even when you're using a graphics card that has functionally 0 compatibility with that driver).

Remember that the Arch developers intend for you to fully install the OS using only the official documentation. It's better to carefully re-read and understand instructions you may have botched than to try rote copying YouTube video tutorials or other unofficial guides.
 
Exquisite friends, I am seriously considering moving onto Linux - alas, I am an old man stuck in his ways, and a gamer to boot. Which Operating System would you fine Ladies and Gentlemen recommend? I'm aware the question is as broad as the horizon, but any hints and pointers would be appreciated.
Linux Mint is aimed at ex-windows users. It pretty well works out of the box with no command line fuckery. If you have no problem installing Windows yourself Mint will be easy.

It has Steam in the repository(Linux equivalent of an app Store but everything's free). A lot of popular games from smaller studios have native Linux support, but most AAA releases are Windows only.

There's also a compatibility layer in the repository called Wine. I buy most my games on GOG and they usually work fine with it. New games don't always work, though they sometimes do. Most things five or six years or older work fine.

If you want to play the big studio titles as soon as they come out you may be stuck with Windows. Otherwise, welcome aboard!
 
Thank you for the advice thus far, excellent friends. What are your experiences with Manjaro? I've been looking over the various "distros", and this one seems targeted towards ease of use, and gamers in particular. Or, at least, that's the opinions I've read on other forums and message boards.
 
  • Like
Reactions: Never Scored
Thank you for the advice thus far, excellent friends. What are your experiences with Manjaro? I've been looking over the various "distros", and this one seems targeted towards ease of use, and gamers in particular. Or, at least, that's the opinions I've read on other forums and message boards.
Manjaro is also a very good choice and very easy for beginners. It also offers Steam in the repository. You also have access to AUR which has a plethora of software.

I used Manjaro for a year or so on my desktop. My go to is usually Mint, but it's base, Debian, did not seem compatible with my motherboard's UEFI at the time, though that has since changed.

For me I had a couple of issues with Manjaro that I don't have with Mint, though they may not be issues for you.

-I stream media from a NAS that is shared on my home Network. For some reason when trying to transfer a lot of big files at once from Manjaro I'd run into errors and would have to use Filezilla to upload them to the NAS over FTP. I don't have this issue with Mint. On the flipside sharing files with Samba requires much less configuration with Manjaro.

-Mint has much better printer support.

-I like the look and feel of Mint's Cinnamon environment better. It's very similar to Windows 7. This is totally subjective.
 
Last edited:
Manjaro is also a very good choice and very easy for beginners. It also offers Steam in the repository. You also have access to AUR which has a plethora of software.

I used Manjaro for a year or so on my desktop. My go to is usually Mint, but it's base, Debian, did not seem compatible with my motherboard's UEFI at the time, though that has since changed.

For me I had a couple of issues with Manjaro that I don't have with Mint, though they may not be issues for you.

-I stream media from a NAS that is shared on my home Network. For some reason when trying to transfer a lot of big files at once from Manjaro I'd run into errors and would have to use Filezilla to upload them to the NAS over FTP. I don't have this issue with Mint. On the flipside sharing files with Samba requires much less configuration with Manjaro.

-Mint has much better printer support.

-I like the look and feel of Mint's Cinnamon environment better. It's very similar to Windows 7. This is totally subjective.
The first two disadvantages indeed do not concern me. As to the third - can you provide some visual examples? I'm big on "ricing", as they call it, though up until now I've limited myself to Windows 10 exclusively, so aesthetics are a significant factor for me.
 
Exquisite friends, I am seriously considering moving onto Linux - alas, I am an old man stuck in his ways, and a gamer to boot. Which Operating System would you fine Ladies and Gentlemen recommend? I'm aware the question is as broad as the horizon, but any hints and pointers would be appreciated.
being an Nvidiot, I went with Po(o)p OS and as you can see from one post before your question, it went without a hitch. All my games work.
 
  • Like
Reactions: Never Scored
The first two disadvantages indeed do not concern me. As to the third - can you provide some visual examples? I'm big on "ricing", as they call it, though up until now I've limited myself to Windows 10 exclusively, so aesthetics are a significant factor for me.
Mint Cinnamon:
Cinemon.jpg

Manjaro KDE:
KDE.jpg

Manjaro Gnome:
Manjaro Gnome.jpg

Mint Mate:
Mint Mate.png

Xfce Manjaro:
xfce manjaro.jpg

Xfce Mint:
Xfce Mint.jpg
 
Back