this post was submitted on 24 Jul 2023
907 points (95.5% liked)

linuxmemes

20880 readers
8 users here now

I use Arch btw


Sister communities:

Community rules

  1. Follow the site-wide rules and code of conduct
  2. Be civil
  3. Post Linux-related content
  4. No recent reposts

Please report posts and comments that break these rules!

founded 1 year ago
MODERATORS
907
GIMP (credit to mrAnmolv) (lemmy.xylight.dev)
submitted 1 year ago* (last edited 1 year ago) by [email protected] to c/[email protected]
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 23 points 1 year ago* (last edited 1 year ago) (4 children)

Everything seems to be way faster on Linux than on windows for some reason.

On one occasion I tested a build that took ~10 min on windows, in a Linux VM installed on the same machine, it finished in ~1min.

I have searched around for an answer for quite some time now, I could not find any definitive reason. Some say that process creation is slower on windows, some say IO is inefficient. Still struggling to explain 10x increase in throughput.

Here is a funny instance: https://emacs.stackexchange.com/questions/17783/why-does-emacs-take-longer-to-start-on-windows-than-on-linux

[–] [email protected] 18 points 1 year ago (1 children)

IMO it's because Windows is targeted for general use so they don't bother optimizing anything. They'll just convince people that thei have aging hardware when things become slow and say stuffs like "unused RAM is wasted RAM" to justify taking up half of my memory on idle.

Even running Linux from a USB is still a way smoother experience than running Windows for me.

[–] [email protected] 3 points 1 year ago

Windows is so not optimised (unoptimized?) that I cannot even see what is slow anymore. Doesn't look like windows is targeted for anything in this state.

[–] [email protected] 13 points 1 year ago* (last edited 1 year ago) (1 children)

I thinks it caused by two reasons:

  • process creation has much higher overhead on windows. On top of that, the antivirus system adds additional overhead not present in Linux because it scan every process on launch and monitor its behavior until the process finished. This result in any workflow that relies on launching a bunch of processes (e.g. make-style compilation which launch the compiler process recursively) to be very slow on Windows.
  • file access on windows is also significantly slower on windows due to its filesystem filter. Also, antivirus typically hook into this filter and inspect every opened files. You can imagine this would result in significant slowdown for any workflow that relies on opening a lot of small files (e.g. compilation)

If you disable the antivirus (including windows defender) performance would definitely improve, but it'll still slower than on Linux.

In order to gain sufficient performance in windows, you'll have to use threads instead of processes (basically a single program doing everything instead of chaining multiple program Unix-style) and put your data in a single file so it can load all at once instead of in a bunch of small files loaded recursively. Basically a complete opposite of what people do on Linux.

[–] [email protected] 1 points 1 year ago

Thanks for information.

Some day I might try to controllaby worsen process creation and file access of Linux to match windows performance. Not today though.

[–] [email protected] 5 points 1 year ago

for some reason.

bloat

I ran Atlus for a second before installing PopOS and Windows can be just as fast if you remove literally everything

Atlus suffers from the fact that it's still just windows though so all the underlying issues are still there.

[–] [email protected] 3 points 1 year ago

Well, in case of Gimp for Windows, it also doesn’t help that it uses a modified GTK. So, when you start on Gimp on Windows, the program must load all the GTK libraries first, while on Linux the shared libraries are already loaded.