- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear all,
I'm fluid mechanics enginner in south korea.
I'm using Intel Visual Fortran Pro v11.1.065.
The computing is done under Intel Core i5 2500 PC.
Recently, I migrated the huge code from CVF to IVF environment.
I have no idea which compiler option for CVF was used.
Under comparing both results, I found that max. 5 % difference is occured.
From the comparison between optimization option \\Od and \\O3 in IVF environment, the difference is up to 10 %.
I wonder this is acceptable difference.
If there's way to avoid this difference in code, please let me know.
Thank you.
I'm fluid mechanics enginner in south korea.
I'm using Intel Visual Fortran Pro v11.1.065.
The computing is done under Intel Core i5 2500 PC.
Recently, I migrated the huge code from CVF to IVF environment.
I have no idea which compiler option for CVF was used.
Under comparing both results, I found that max. 5 % difference is occured.
From the comparison between optimization option \\Od and \\O3 in IVF environment, the difference is up to 10 %.
I wonder this is acceptable difference.
If there's way to avoid this difference in code, please let me know.
Thank you.
Link Copied
2 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
A computer model with an error of 10 percent (as compared to experimental results) is probably acceptable in some fields, including fluid mechanics. However, a variation of 10 percent in computed results from a single model/algorithm, suspected to be caused entirely by changes in compiler options, is not acceptable.
Rather than looking for ways to avoid differences, I think that you should put in the effort to track down the causes of the differences. An inaccurate result, no matter how repeatable, is still inaccurate.
There are some major differences in how CVF and IVF treat uninitialized variables, and whether local variables are saved by default, and whether the author of your code assumed a certain kind of treatment of these issues.
Please consult the link "Migrating from CVF" at the top of this forum for details of the differences between CVF and IVF.
Rather than looking for ways to avoid differences, I think that you should put in the effort to track down the causes of the differences. An inaccurate result, no matter how repeatable, is still inaccurate.
There are some major differences in how CVF and IVF treat uninitialized variables, and whether local variables are saved by default, and whether the author of your code assumed a certain kind of treatment of these issues.
Please consult the link "Migrating from CVF" at the top of this forum for details of the differences between CVF and IVF.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting mecej4
A computer model with an error of 10 percent (as compared to experimental results) is probably acceptable in some fields, including fluid mechanics. However, a variation of 10 percent in computed results from a single model/algorithm, suspected to be caused entirely by changes in compiler options, is not acceptable.
Rather than looking for ways to avoid differences, I think that you should put in the effort to track down the causes of the differences. An inaccurate result, no matter how repeatable, is still inaccurate.
There are some major differences in how CVF and IVF treat uninitialized variables, and whether local variables are saved by default, and whether the author of your code assumed a certain kind of treatment of these issues.
Please consult the link "Migrating from CVF" at the top of this forum for details of the differences between CVF and IVF.
Rather than looking for ways to avoid differences, I think that you should put in the effort to track down the causes of the differences. An inaccurate result, no matter how repeatable, is still inaccurate.
There are some major differences in how CVF and IVF treat uninitialized variables, and whether local variables are saved by default, and whether the author of your code assumed a certain kind of treatment of these issues.
Please consult the link "Migrating from CVF" at the top of this forum for details of the differences between CVF and IVF.
In some cases, proper grouping of expressions could improve accuracy of evaluation, e.g.
x*y - x*z => x*(y-z)
a transformation which the compiler can make (or not) as it chooses, unless you write it yourself in the more accurate form.
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page