Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Joplin Portable Extremely Sluggish to Present Its GUI Once It Is Called :: Windows 10 Pro #11573

Open
touwys opened this issue Jan 3, 2025 · 11 comments
Labels
bug It's a bug

Comments

@touwys
Copy link

touwys commented Jan 3, 2025

Operating system

Windows

Joplin version

3.1.24

Desktop version info

Joplin 3.1.24 (prod, win32)

Client ID: 2a685f163bd644198dfd91c01554d8f9
Sync Version: 3
Profile Version: 47
Keychain Supported: No

Revision: d581264

•••

OS Name: Microsoft Windows 10 Pro 64-bit
Version: 10.0.19045 Build 19045

•••

Current behaviour

Joplin takes 25.1 seconds to start before it becomes useful.

Expected behaviour

A much improved startup time.

Logs

No response

@touwys touwys added the bug It's a bug label Jan 3, 2025
@touwys touwys changed the title Joplin Portable Extremely Sluggish to Present It's GUI Once It Is Called :: Windows 10 Pro Joplin Portable Extremely Sluggish to Present Its GUI Once It Is Called :: Windows 10 Pro Jan 3, 2025
@tomasz1986
Copy link

This is by design, because Joplin Portable needs to unpack itself into an empty directory every time you launch the executable. The speed is also very hardware-dependent, i.e. the beefier the hardware, the faster the application will open. From my experience, it's especially the CPU and storage speed that matter in this case.

@touwys
Copy link
Author

touwys commented Jan 5, 2025

Thank you for your response @tomasz1986. Joplin is such a high quality app that it really deserves this to be fixed. Can you please explain why it needs to unpack itself every time it starts? Previously, Joplin 2.11.11 ran on Windows 7 with exactly the same PC architecture — before the upgrade to Windows 10. With that particular hardware configuration, the startup time was not notably slow. The startup time only deteriorated once the change were made to Windows 10 and Joplin 3.1.24)

Could the long startup time perhaps related to #11574?

@tomasz1986
Copy link

tomasz1986 commented Jan 5, 2025

Could the long startup time perhaps related to #11574?

Not really, those are are just temporary files created by Electron after Joplin has already started.

The reason why Joplin portable unpacks itself every time is likely because a) the files must be unpacked in order to actually run, and b) being portable, it cannot (or shouldn't) store any files on the system for long-term use, so it needs to start fresh.

What is the hardware specifically? Windows 7 is lighter than Windows 10, is it's understandable that software would run faster on it (especially if the hardware is slow), and also, Windows 7 by default doesn't come with any antivirus, while Windows 10 does have Microsoft Defender built in, which can have a significant impact on how quickly applications start.

Lastly, Joplin itself has also grown in size, so it will take longer to unpack the current version in comparison to an older one.

@touwys
Copy link
Author

touwys commented Jan 6, 2025

Thank you, @tomasz1986.

Admittedly, my PC hardware is more than a decade old (see below), and some other factors may play a role as well — as you explained. All else considered though, this hardware architecture handles a great variety of installed apps with an apparent ease. I will look into the role Microsoft Defender (as well as Malwarebytes) might play in the issue.

CPU

  • Intel Core i7 3770K @ 3.50GHz
  • Ivy Bridge 22nm

RAM

  • 16,0GB Dual-Channel DDR3 @ 668MHz (9-9-9-24)

Motherboard

  • ASUSTeK COMPUTER INC. P8Z77-V DELUXE (LGA1155)

@touwys
Copy link
Author

touwys commented Jan 6, 2025

I will look into the role Microsoft Defender (as well as Malwarebytes) might play in the issue.

Adding joplinportable.exe as an exclusion to both the aforesaid apps, did not make a notable difference.

@tomasz1986
Copy link

tomasz1986 commented Jan 6, 2025

Adding joplinportable.exe as an exclusion to both the aforesaid apps, did not make a notable difference.

Please try disabling Windows Defender's real-time scanning completely before testing. Excluding just the executable probably won't help, because the antivirus will still scan the path, where the files are being extracted to.

The listed hardware isn't that bad, but what about the storage drive? It it an SSD or an HDD?

@touwys
Copy link
Author

touwys commented Jan 6, 2025

Please try disabling Windows Defender's real-time scanning completely before testing. Excluding just the executable probably won't help, because the antivirus will still scan the path, where the files are being extracted to.

Should I not rather exclude the complete Joplin (extraction) folder from getting scanned?

The listed hardware isn't that bad, but what about the storage drive? It it an SSD or an HDD?

SSD

@tomasz1986
Copy link

Should I not rather exclude the complete Joplin (extraction) folder from getting scanned?

That could work, but I'm not sure if it's not randomly generated each time. The path would be somewhere in your %TEMP% folder. Purely for testing purposes, it's much easier to switch Defender off (just temporarily).

@touwys
Copy link
Author

touwys commented Jan 6, 2025

Disabling real-time scanning for Defender gained c 2 secs. Following, disabling real-time scanning for both Defender and Malwarebytes, gained c 4 secs. Insignificant, really.

@tomasz1986
Copy link

Yeah, so in this situation, I don't think there's anything else you could do. Is there a specific reason why you need to use the portable version? Otherwise, you could install the normal Joplin release, which resides on the disk unpacked, so it should also start much quicker.

@touwys
Copy link
Author

touwys commented Jan 6, 2025

Thank you for your proposals, all well-considered.

It goes without saying that app portability is important when having to travel around sans your own PC. Hence, nearly all of my apps are portable. The user who deploys a portable app — one that is explicitly designed for, and claims to be portable — would expect that the app strictly conforms to the portable norm. Else, why even make it available if it doesn't quite cut to the chase? From what I have experienced and read so far about Joplin Portable, I get the impression that there is a distinct lack of interest to move along the development of the portable version for it to achieve true portability. I may be wrong, of course, but still the proof of the pudding is in the eating. Are there any hints on what we may expect that front (i.e. achieving full portability)?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug It's a bug
Projects
None yet
Development

No branches or pull requests

2 participants