6 ms·
I'd wager that's more likely due to Windows than the hardware. Like sure the hardware does play a part in that but its not the whole story or even most of it.
by rstat1 7mo ago
I'd wager that's more likely due to Windows than the hardware. Like sure the hardware does play a part in that but its not the whole story or even most of it.
My C++ projects have a python heavy build system attached where the main script that runs to prepare everything and kick off the build, takes significantly longer to run on Windows than Linux on the same hardware.
- m_mueller 7mo agoAfaik a lot of it is ntfs. It’s just so slow with lots of small files. Compare unzipping moderately large source repos on windows vs. POSIX, it’s day and night.
- p_ing 7mo agoNo, it’s not NTFS, it’s the file system filter architecture of the NT kernel.
- mattbee 7mo agoI had internalised that it was Windows Defender hooking every file operation and checking it against a blacklist? I've had it forced off for years.
- p_ing 7mo agoWindows Defender is a file system filter which you cannot disable. You may have others (but they're fortunately rare, now). All that said, you cannot disable the architecture, i.e. bypass the file system filter code.
- rstat1 7mo agoYou can with Dev Drives now apparently, which don't use NTFS and disable ALL the filter drivers (including the Defender one) I stopped using Windows just as these were added so now I'm curious if there's any actual performance benefit to using the.
- p_ing 6mo agoNo, they don't disable the Windows Defender filter, they put it in async mode.
- zer0zzz 7mo agoThis guy gets it. Yes bingo. It's the VFS' filters/ACLs support afaik.
- PaulHoule 7mo agoJust deleting 40,000 files from the node_modules of a modest Javascript project can thoroughly hammer NTFS.
- fluoridation 7mo agoI think part of that is Explorer, rather than NTFS. Try doing it from the console instead. rd /q /s <dir>.
- PaulHoule 7mo agoIt still takes a lot longer than Linux or Mac OS X.
- fluoridation 7mo agoNTFS is definitely slower to modify file system structures than ext4.
- PaulHoule 7mo agoA big part of it is that NT has to check with the security manager service every time it does a file operation. The original WSL for instance was a very NT answer to the problem of Linux compatibility: NT already had a personality that looked like Windows 95, just make one that looks like Linux. It worked great with the exception of the slow file operations which I think was seen as a crisis over Redmond because many software developers couldn’t or wouldn’t use WSL because of the slow file operations affecting many build systems. So we got the rather ugly WSL2 which uses a real Linux filesystem so the files perform like files on Linux.
- fluoridation 7mo agoI don't know about ugly. Virtualization seems like a more elegant solution to the problem, as I see it. Though it also makes WSL pointless; I don't get why people use it instead of just using Hyper-V.