How big can be executable?
-
Hi, Now my executable is more than 80 MB. Is there some recommendations for the size of executable? Thanks.
Yes break your file(exe) to dll files
WhiteSky
-
Hi, Now my executable is more than 80 MB. Is there some recommendations for the size of executable? Thanks.
Depends - are you talking about its physical size on disk, or its footprint when in memory? Converting things like static LIBs to DLLs may actually increase the total size of your end-user distribution, because when you link in a static LIB, you only pull in the functions that you need. But a DLL will contain ALL functions in the library, even if your application only uses 5 out of 80 of them. If you are talking about your footprint, 80MB may or may not be all that bad, depending on what your application is doing. If it is acting as a database or processing engine, it might not be bad. If it is a fancy text editor working with a 1MB file, it might be. Peace!
-=- James
Please rate this message - let me know if I helped or not! * * *
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
See DeleteFXPFiles -
Yes break your file(exe) to dll files
WhiteSky
-
Depends - are you talking about its physical size on disk, or its footprint when in memory? Converting things like static LIBs to DLLs may actually increase the total size of your end-user distribution, because when you link in a static LIB, you only pull in the functions that you need. But a DLL will contain ALL functions in the library, even if your application only uses 5 out of 80 of them. If you are talking about your footprint, 80MB may or may not be all that bad, depending on what your application is doing. If it is acting as a database or processing engine, it might not be bad. If it is a fancy text editor working with a 1MB file, it might be. Peace!
-=- James
Please rate this message - let me know if I helped or not! * * *
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
See DeleteFXPFilesActually my application is a scientific application which combine MFC based front end and calculations in Fortran static library. During the run program doing a quite freqent allocations/deallocation of big arrays for the calculations. And another concern is a project compilation time. It's take a while to compile. Could you recommend something about it? Thanks.
-
Actually my application is a scientific application which combine MFC based front end and calculations in Fortran static library. During the run program doing a quite freqent allocations/deallocation of big arrays for the calculations. And another concern is a project compilation time. It's take a while to compile. Could you recommend something about it? Thanks.
Since you are not building the libraries (they are [preexting] Fortran libraries), you are seeing app build delays. Correct use of pre-compile headers is likely the best way to improve compilation times. Breaking up larger CPP files into small ones can improve build times if you are making code changes, but might not affect release build times. Other than that - no suggestions. As far as runtime performance, not constantly throwing away allocated memory (keep it around and reuse it as much as possible) is likely your best option. Your users know the kind of application they are using and should expect it to be a bit of a hog at times. Peace!
-=- James
Please rate this message - let me know if I helped or not! * * *
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
See DeleteFXPFiles -
Actually my application is a scientific application which combine MFC based front end and calculations in Fortran static library. During the run program doing a quite freqent allocations/deallocation of big arrays for the calculations. And another concern is a project compilation time. It's take a while to compile. Could you recommend something about it? Thanks.
On top of what James said regarding app performance, if you're app is creating/destroying a lot of threads, consider creating the threads just once, and then just starting them. Creating/destroying threads can cause quite a bit of overhead. As far as file size, an 80mb file could take quite a bit of time to initially load. You might want to consider breaking the app into DLLs that load when needed the first time, and stay in memory until the app is shut down.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001