Skip to content
Snippets Groups Projects
Commit a33a310e authored by Martin Schroschk's avatar Martin Schroschk
Browse files

Resolve issue #407 by adding information about optimization flag

* Some line adjustment
parent b92e7c11
No related branches found
No related tags found
2 merge requests!777Automated merge from preview to main,!759Resolve issue #407 by adding information about optimization flag
......@@ -15,26 +15,26 @@ It will tell you:
- [Using debuggers](debuggers.md)
- [How to investigate the performance and efficiency of your code](performance_engineering_overview.md)
Some hints that are helpful:
- Stick to standards wherever possible, e.g. use the `-std` flag
for GNU and Intel C/C++ compilers. Computers are short living
creatures, migrating between platforms can be painful. In addition,
running your code on different platforms greatly increases the
reliably. You will find many bugs on one platform that never will be
revealed on another.
- Before and during performance tuning: Make sure that your code
delivers the correct results.
!!! hint "Some general, helpful hints"
Some questions you should ask yourself:
- Stick to standards wherever possible, e.g. use the `-std` flag
for CLANG, GNU and Intel C/C++ compilers. Computers are short living
creatures, migrating between platforms can be painful. In addition,
running your code on different platforms greatly increases the
reliably. You will find many bugs on one platform that never will be
revealed on another.
- Compile your code with optimization, e.g. `-O2` will turn on a moderate level of optimization
where most optimization algorithms are applied. Please refer to the specific documentation of
your compiler of choice for detailed information.
- Before and during performance tuning: Make sure that your code delivers the correct results.
- Given that a code is parallel, are the results independent from the
numbers of threads or processes?
- Have you ever run your Fortran code with array bound and subroutine
argument checking (the `-check all` and `-traceback` flags
for the Intel compilers)?
- Have you checked that your code is not causing floating point
exceptions?
- Does your code work with a different link order of objects?
- Have you made any assumptions regarding storage of data objects in
memory?
!!! questions "Some questions you should ask yourself"
- Given that a code is parallel, are the results independent from the
numbers of threads or processes?
- Have you ever run your Fortran code with array bound and subroutine argument checking (the
`-check all` and `-traceback` flags for the Intel compilers)?
- Have you checked that your code is not causing floating point exceptions?
- Does your code work with a different link order of objects?
- Have you made any assumptions regarding storage of data objects in memory?
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment