One one had, the performance really sucks.
On the other, there's no way we would've had Spotify, Slack, Teams, and all these big apps supported on Linux.
One one had, the performance really sucks.
On the other, there's no way we would've had Spotify, Slack, Teams, and all these big apps supported on Linux.
Electron app memory usage: 150 MB
Native app memory usage: 0 MB (because you never ship it)
1: https://twitter.com/jamonholmgren/status/1105876480930734086
But seriously -- wine should have equal performance to running a program "natively" on windows because it essentially is running the program natively, just with different system DLLs that call back to the linux kernel instead of the NT executive.
Their implementation may be slightly slower in places, but it's not a problem inherent to Wine itself, and could always be fixed.
I know there's a stigma against running win32 apps on linux, and possibly rightly so, but there really isn't a reason why Wine couldn't be a legitimate runtime environment for linux. You can make 100% open source software that targets Wine, and never needs to use or link to proprietary software.
Wine has even been ported to architectures where there have never been native windows ports, like the ppc64le port of Wine.
(Wine/win32's binary interface is also easier to intercept and automatically translate/emulate calls for non-native architectures, which is the basis of WoW64 and x86 on ARM emulation, and in Wine land, projects like Hangover https://github.com/AndreRH/hangover )
That is not guaranteed. Windows programs and Win32 APIs are writting for and optimized to run on the the NT kernel which has different perfomance characteristics from the Linux kernel. Some example:
- Wine needs to emulate a case-insensitive filesystem on top of a case sensitive filesystem, which is less efficient thatn using a filesystem / kernel FS layer that is designed for this.
- Some locking primitives are different enough that Linux will need additional syscalls to let Wine reach the same perfomance when emulating the Windows ones [0]
[0] https://www.phoronix.com/scan.php?page=news_item&px=FUTEX2-2...
I just meant that, in general, Wine should be very close to as fast on Windows, since it can usually implement win32 DLLs without much emulation/translation needed. Excepting all the bits that do :-)
[0] https://www.collabora.com/news-and-blog/blog/2020/08/27/usin...
If the app had only essential features, it could have functioned well on web.
Back when Russian Facebook rival vk had an unlimited offering of pirated music, their music player on the web was the best. You have a list of songs, a search bar, and play/pause.
Nowadays Spotify web client takes a second or two to register mouse click. This is just sad.
Whenever that happens, I just start doing "4 billion... 8 billion... 12 billion"
We waste soooo much horsepower.