So I jumped ship from Windows to Kubuntu last night, and It's mostly been pretty good. However my general performance of the computer has been abysmal. Like it takes upwards of 5 seconds to open anything. All of my hardware seems to be running at max speeds, so I have no idea why it would be so sluggish? It's as if I'm running on 2gb of ram and a cpu at like 1.5ghz. My specs are:
i7-8700k at 4.7mhz max
Amd Rx 6750xt
16gb ram at 3200mhz
Linux is on an m.2
Any ideas? This is practically unusable for any normal operations, let alone any gaming.
Get rid of Kubuntu is what I would recommend. Really.
Question, do you want to do crazy stuff? Do you want A LOT more than what you find on Flathub.org ?
If not, and you want a fast and stable system, get Fedora Kinoite, you may want to use Universalblue Images to have Firefox and all the rest working (videocodecs installed and automatic updates mostly. If you have NVIDIA you NEED the ublue kinoite-nvidia image)
On Fedora you just need to disable fedora flatpaks, enable flathub, install your apps and voila.
Follow the flathub.org Setup instructions, in Discover you can set the sources and disable Fedora Flatpaks.
I am working on a GUI setup script to fix everything.
If OP is also interested in gaming, Bazzite is another great ublue-based choice. I've been daily driving it for a while on my Deck and it works beautifully. User friendly setup and low maintenance but has plenty of useful knobs power users can tweak.
So as an explanation, Fedora Atomic is like Git for your OS. This means the OS keeps track of every package, what is where etc. On the server lays a fresh, recent image, assembled by the Fedora people. They ship really recent software and these images are well tested and should just work.
This is exactly the state you have on a regular Distro, after installing the ISO (and nothing went wrong). But what happens now? You install, uninstall, move, compile, write stuff to system directories, etc.
In the end we have 100 Ubuntu users with 100 different systems. "I have this issue but nobody else has it", yes because your system is unique and you have no idea why.
Meanwhile Android does the exact opposite, since forever. And that sucks. But as apps are highly confined and the system is read-only (lol often not even readable) you have no viruses.
Fedora Atomic with rpm-ostree does a thing in between. You have your Operating system, good as it is. But in Fedora for example there are Codecs missing so Firefox or direct Binaries like Davinci Resolve will give you a hard time.
You can "layer" packages though, that means from then on you have the official image plus a transparent set of extra packages. If you find out this breaks something, do rpm-ostree uninstall PACKAGE and that layer is gone.
If you want to reset your system entirely, do rpm-ostree reset (this is not android-level yet, you still need to remove /var /etc and more.)
Also there are containers. They are not virtual machines because they use your systems kernel. But you can install all those nasty dependencies you need for example for that one old app, for building software etc. Using Toolbox or Distrobox this is really easy.
So before modifying the system, you can use that instead. Still, you can modify your system a lot, add repos, etc.
Then comes universalBlue. They do the modifying BEFORE sending the images to your client. So the modifications are not your own, and errors may already be discovered when you would get them. Also, having the changes there reduces the load on your machine, all you do is download, build, reboot, done. Automatically.
This is so much better than Windowd Updates, more secure and with no boot delay AT ALL. That fact alone is a crazy selling point.
If you ask yourself "why should I need this", just think about how your OS will look like in 5 years. So many changes, but using rpm-ostree you are always just one command away from having a "fresh install" experience.
Just a guess: you might actually be running the CPU at a low frequency. As in the frequency scaling driver isn't working.
Maybe poke around on a performance monitor tool. Seems like there's "Plasma System Monitor" on KDE. Make sure the tool can see all the RAM, all of the CPU cores (2x physical cores with Intel hyper threading).
It should also report the CPU frequency, which should go up and down depending on the load. You can also check that the CPU temperature report is reasonable.
This also gives you process info, so when one of these 5 second freezes happens, you should be able to see what shoots to the top of the list. Or maybe there's a background task churning through a bunch of stuff. Or maybe the flash access is really slow.
In addition to the CPU throttling itself due to thermals like you said, you should also be aware that all Ubuntu's are replacing more and more traditional packages with snaps for an increasing number of applications.
Step 1 (by the system) of opening a snap application for the first time (since boot) is to extract the compressed snap image, which makes startup time significantly longer (like several seconds for something you would expect to be instant). Once the application is started performance should be the same as if the application had been installed as a traditional .deb package.
You should also consider adding flatpak support and flathub. Applications installed as Flatpaks generally integrate better in the desktop than snaps, and flathub has a large and growing selection of apps. The flathub website has a few command lines you can copy-paste to enable flatpak and flathub support, then apps from Flathub will show up in the Discover app store.
Personally I use Kubuntu and use both Flatpak and snap apps, but generally prefer flatpaks when they're available. And any software where I don't care about having a recent version I install as a traditional package because it's more lean
Welcome to snaptown where everything is slow at first. Please consider not using a canonical Linux distribution (Ubuntu, Kubuntu, Xubuntu, Ubuntu Studio). So something like Linux Mint, Fedora Linux.
You said you want to do gaming? Consider Garuda Linux (with KDE flavour) or Nobara Linux (Gnome flavour) those are aimed for gaming but supports everything else as well.
Snaps are only really useful on Server Machines and I don't know why, canonical is pushing this so hard.
THe good thing with linux, that it's totally transparent, you can easily find what's wrong, if you look at the right place.
First I would check journalctl, dmesg, running processes with htop, if I can see something wrong, unexpected. Check hard drive smart and run short selft test with gsmartcontrol.
Here is a general troubleshooting guide from arch wiki: https://wiki.archlinux.org/title/General_troubleshooting
I know you use ubuntu, but most of the commands here are the same on all distros, basically anything not related to pacman should be the same on your system
If this isn't your first round on linux, Try Debian, set it to use non-free contrib packages and set the appstore to install apps as flatpaks before native.
Avoid using Ubuntu based distros as they run Snap packages which are just a general nightmare for users.
Snaps make sense for servers, but the only reason Ubuntu forces it on users is $$$$.
The issue for me was that my computer had two disks, a small fast one (sata ssd) and a large slow one. Windows had separated itself with the operating system itself and installed programs on the ssd, with all user documents on the slow disk.
Linux can do this too. Put a partition mounted on / (root) on the fast disk, and one mounted on /home on the large disk.
I’d put both on the large disc initially.
There’s a part of the installation where you set up the partitioning. Redoing the installation really sped up my Linux Mint installation.
The way I currently have it is that I have Windows on a SATA SSD and Kubuntu on a M.2. Windows doesn't know about the Linux M.2 but Linux knows about the Windows SSD
This sounds like a slow drive except you said it's on an m.2. If you just switched recently enough that this wouldn't be a major inconvenience, I would try a different distro. You haven't said anything about your use case, so I can't make a specific recommendation, but distrochooser.de could help with that.
This is not going to be a popular opinion around these parts, but I’d suggest using Ubuntu, at least at first. It’s the biggest distribution for beginners, is relied on by corporations that provide Linux options, and seems to “just work” most of the time.