- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello folks,
Hope all is well.
Do you think it is worth migrating a fortran application from Windows 10 to Debian linux for performance?
Will my code run faster on Debian?
I have had this code for a while. Always ran it under windows using gfortran, after I found out ifort was free, I gave it a try and noticed a bit of a difference in performance. I have had people tell me Linux offers an edge in performance and that should consider porting.
Would someone knowlegeable in Linux and Windows confirm this?
Very much appreciated.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I don't think if you would see a substantial difference. Yes, applications tend to run slower on Windows, but mostly because there are tens of other resource-demanding applications that are simultaneously running in the background, things like anti-malware/virus software, ...
If running under a different OS makes a substantial difference in the performance of your code, then it is probably time to parallelize it instead of migrating to another platform solely to gain a slight performance.
On a side note, you should write your code such that it is portable to any other platform/architecture/compiler without any changes to the code.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I don't think if you would see a substantial difference. Yes, applications tend to run slower on Windows, but mostly because there are tens of other resource-demanding applications that are simultaneously running in the background, things like anti-malware/virus software, ...
If running under a different OS makes a substantial difference in the performance of your code, then it is probably time to parallelize it instead of migrating to another platform solely to gain a slight performance.
On a side note, you should write your code such that it is portable to any other platform/architecture/compiler without any changes to the code.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I recently compared the performance of my ifort compiled application on windows and linux. The reason was that it was much slower on windows than fortran, for which, as has been noted, there should be no reason. In fact I tried a number of compute and (different types of) memory bound kernels and found no significant difference between the two OS. However, there was a huge difference with allocation, in particular deallocation, see
BUG-deallocate-always-aquires-a-lock-in-openmp-region
Huge-performance-difference-with-allocate-deallocate-in-openmp
I have gone as far as using an external allocator to achieve a similar performance in windows compared to Linux as suggested in the second link.
If you installed oneapi, you can run a hotspot analysis with vtune. If possible you could just port the hotspot code and make your own comparison and judgment.
(You might see significant differences in IO related code, which might run faster on Linux, as it is supposed to be better optimised.)

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page