Compressing the final .EXE file with UPX

Under Deployment, when “Compress the final .EXE file with UPX (may require additional build time)” is checked, the .exe loads slower.

Checked: filesize 65,901KB. Loads in 16 seconds.
Unchecked: filesize 75,004. Loads in 8 seconds.

Why is this happening?

Your probably tired of hearing from me and you can tell me to bug off, no skin off my back:). But I stopped using UPX as much for this exact reason. Not just with Exeout, but other software as well. Startup time can really lag on certain compressed software.

This is a good overview:

UPX is a free, secure, portable, extendable, high-performance executable packer for several executable formats. UPX is an advanced executable file compressor. UPX will typically reduce the file size of programs and DLLs by around 50%-70%, thus reducing disk space, network load times, download times and other distribution and storage costs². However, upon startup of a compressed EXE/DLL, all of the code is decompressed from the disk image into memory in one pass, which can cause disk thrashing if the system is low on memory and is forced to access the swap file. In contrast, with uncompressed EXE/DLLs, the OS allocates memory for code pages on demand (i.e. when they are executed)¹. This can cause slower performance when using UPX¹.

I hope this helps!

Source: Conversation with Bing, 6/17/2023
(1) . why is software slower when using upx - Recherche.
(2) c++ - Are there any downsides to using UPX to compress a Windows … c++ - Are there any downsides to using UPX to compress a Windows executable? - Stack Overflow.
(3) c# - what is UPX’s best compression method - Stack Overflow. c# - what is UPX's best compression method - Stack Overflow.
(4) UPX - Wikipedia. UPX - Wikipedia.

1 Like

You are great! I would never mind hearing from you. Thank you for the info.

1 Like

Nowadays, a lot of antivirus software can slow down executions of EXE files because they are scanned and their hashes sent to their “clould” for review (even sometimes the EXE is even uploaded to the antivirus cloud) and this can take time.
UPX is an option to decrease EXE file size for those who don’t have a fast Internet connection. But it remains an option. Nowadays, I’m not sure whether it is so useful, especially when you see EXE filesizes generated with other solutions (Node.JS).