From: <Ari...@ic...> - 2003-01-27 08:53:11
|
For some time now I am using gcc to compile/link specific third-party fortan code to do some electro-magnetic modelling. In the past I used a pre-made DOS-based binary/executable for this. However due to the use of some kind of DOS-extender within this binary it would not run anymore on windows-XP. (stack overflow problems) This forced me to acquire the fortran sources and build my own binary using the gcc fortran compiler. All this succeeded very well. However there is one major problem concerning the great difference between startup-speed of the old DOS-based executable and the new g77 based executable. The old DOS-based binary is much faster at start-up (initialization) compared to the g77 based executable. This is especially important because I run a large sequence of short calculations resulting in a significant increase in overall time due to the large amount of the g77 based executable start-ups. When performing one large run however the g77 based executable is superior in performance. Used command-line(options): g77 -O -fno-automatic -Wall nec2d.f -o nec2d.exe Anybode with suggestions how to speed-up the initialization process. Arie. ---------------- This E-mail message, including any attached documentation, is confidential. Should you have received this message wrongly, you are urged to inform the sender at "disclaimer@ICT.nl" and remove the message from your system. Any unauthorised dissemination of the information, in whole or in part, is prohibited. E-mail messages can be subject to change. ICT Automatisering NV and its subsidiaries cannot be held responsible for incorrect, incomplete and/or delayed transfer of messages and possible damage caused by this. Although ICT Automatisering NV (including its subsidiaries) makes every effort to send messages free of viruses by using a viruschecker, ICT Automatisering NV (or its subsidiaries) cannot guarantee that the message and any attachments are actually completely virus free. |
From: Mikael A. <mik...@te...> - 2003-01-27 10:00:14
|
Hi ! I don't know zip about the fortran compiler but I don't think it has anything to do with the compilation itself, there could be two reasons, there is something in the startup code for fortran application in gcc that takes some time (try with a short fortran app and see if you have the same problem there), the other alternative is that there is something in the startup of your application(s) that cause the slow start. Mikael ----- Original Message ----- From: <Ari...@ic...> To: <min...@li...> Sent: Monday, January 27, 2003 9:52 AM Subject: [Mingw-users] Slow g77 based executable start-up in Windows-Me/XP > For some time now I am using gcc to compile/link specific > third-party fortan code to do some electro-magnetic modelling. > > In the past I used a pre-made DOS-based binary/executable for > this. > However due to the use of some kind of DOS-extender within > this binary it would not run anymore on windows-XP. > (stack overflow problems) > > This forced me to acquire the fortran sources and build my own > binary using the gcc fortran compiler. All this succeeded very well. > > However there is one major problem concerning the great difference > between startup-speed of the old DOS-based executable and the new > g77 based executable. > > The old DOS-based binary is much faster at start-up (initialization) > compared to the g77 based executable. > > This is especially important because I run a large sequence of short > calculations resulting in a significant increase in overall time > due to the large amount of the g77 based executable start-ups. > > When performing one large run however the g77 based executable is > superior in performance. > > Used command-line(options): > > g77 -O -fno-automatic -Wall nec2d.f -o nec2d.exe > > Anybode with suggestions how to speed-up the initialization > process. > > Arie. > ---------------- > This E-mail message, including any attached documentation, is > confidential. Should you have received this message wrongly, you are > urged to inform the sender at "disclaimer@ICT.nl" and remove the message > from your system. Any unauthorised dissemination of the information, in > whole or in part, is prohibited. E-mail messages can be subject to > change. ICT Automatisering NV and its subsidiaries cannot be held > responsible for incorrect, incomplete and/or delayed transfer of > messages and possible damage caused by this. Although ICT Automatisering > NV (including its subsidiaries) makes every effort to send messages free > of viruses by using a viruschecker, ICT Automatisering NV (or its > subsidiaries) cannot guarantee that the message and any attachments are > actually completely virus free. > > > > > ------------------------------------------------------- > This SF.NET email is sponsored by: > SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See! > http://www.vasoftware.com > _______________________________________________ > MinGW-users mailing list > Min...@li... > > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users |
From: Marcel C. <mar...@ho...> - 2003-01-30 10:58:50
|
Some random thoughts: - Is your DOS version also G77 based (e.g. using DJGPP)? If yes, you might get a DOS version working under XP by using a newer version of DJGPP. Check the following page on a discussion on DJGPP compatibility with W2K/XP: http://clio.rice.edu/djgpp/win2k/main.htm - Did you compare the sizes of your EXE files both for the DOS and the Win32 versions of your program? Maybe the slowdown is based on a huge EXE file size. Mingw includes some debugging information by default, and you can reduce the size of the EXE file by adding the option -s when compiling, or by using the STIP.EXE tool on the resulting EXE file. - Finally, if code size is the issue, than optimizing more might help. E.g. instead of -O, use the options -O2 or -Os to do more aggressive optimizations and favour smaller code size. E.g. based on the last 2 suggestions, try the following to compile your code: g77 -Os -s -fno-automatic -Wall nec2d.f -o nec2d.exe Marcel <Ari...@ic...> wrote in message news:OF8...@de...... > For some time now I am using gcc to compile/link specific > third-party fortan code to do some electro-magnetic modelling. > > In the past I used a pre-made DOS-based binary/executable for > this. > However due to the use of some kind of DOS-extender within > this binary it would not run anymore on windows-XP. > (stack overflow problems) > > This forced me to acquire the fortran sources and build my own > binary using the gcc fortran compiler. All this succeeded very well. > > However there is one major problem concerning the great difference > between startup-speed of the old DOS-based executable and the new > g77 based executable. > > The old DOS-based binary is much faster at start-up (initialization) > compared to the g77 based executable. > > This is especially important because I run a large sequence of short > calculations resulting in a significant increase in overall time > due to the large amount of the g77 based executable start-ups. > > When performing one large run however the g77 based executable is > superior in performance. > > Used command-line(options): > > g77 -O -fno-automatic -Wall nec2d.f -o nec2d.exe > > Anybode with suggestions how to speed-up the initialization > process. > > Arie. > ---------------- > This E-mail message, including any attached documentation, is > confidential. Should you have received this message wrongly, you are > urged to inform the sender at "disclaimer@ICT.nl" and remove the message > from your system. Any unauthorised dissemination of the information, in > whole or in part, is prohibited. E-mail messages can be subject to > change. ICT Automatisering NV and its subsidiaries cannot be held > responsible for incorrect, incomplete and/or delayed transfer of > messages and possible damage caused by this. Although ICT Automatisering > NV (including its subsidiaries) makes every effort to send messages free > of viruses by using a viruschecker, ICT Automatisering NV (or its > subsidiaries) cannot guarantee that the message and any attachments are > actually completely virus free. > > > > > ------------------------------------------------------- > This SF.NET email is sponsored by: > SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See! > http://www.vasoftware.com > _______________________________________________ > MinGW-users mailing list > Min...@li... > > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > |
From: Marcel C. <mar...@ho...> - 2003-01-30 12:28:17
|
"Marcel Cox" <mar...@ho...> wrote in message news:b1b0dm$oel$1...@ma...... > - Did you compare the sizes of your EXE files both for the DOS and the Win32 > versions of your program? Maybe the slowdown is based on a huge EXE file > size. Mingw includes some debugging information by default, and you can > reduce the size of the EXE file by adding the option -s when compiling, or > by using the STIP.EXE tool on the resulting EXE file. That should be STRIP.EXE of course. Marcel |