Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
hpc-compendium
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Package registry
Container Registry
Model registry
Operate
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
ZIH
hpcsupport
hpc-compendium
Commits
a1c4e03e
You need to sign in or sign up before continuing.
Commit
a1c4e03e
authored
2 years ago
by
Danny Marc Rotscher
Browse files
Options
Downloads
Plain Diff
Merge branch 'issue-407' into 'preview'
Resolve issue
#407
by adding information about optimization flag Closes
#407
See merge request
!759
parents
e587ae84
46e5f839
No related branches found
No related tags found
2 merge requests
!777
Automated merge from preview to main
,
!759
Resolve issue #407 by adding information about optimization flag
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
doc.zih.tu-dresden.de/docs/software/software_development_overview.md
+19
-20
19 additions, 20 deletions
...dresden.de/docs/software/software_development_overview.md
with
19 additions
and
20 deletions
doc.zih.tu-dresden.de/docs/software/software_development_overview.md
+
19
−
20
View file @
a1c4e03e
...
@@ -15,26 +15,25 @@ It will tell you:
...
@@ -15,26 +15,25 @@ It will tell you:
-
[
Using debuggers
](
debuggers.md
)
-
[
Using debuggers
](
debuggers.md
)
-
[
How to investigate the performance and efficiency of your code
](
performance_engineering_overview.md
)
-
[
How to investigate the performance and efficiency of your code
](
performance_engineering_overview.md
)
Some
hint
s that are
helpful
:
!!!
hint
"Some general,
helpful
hints"
-
Stick to standards wherever possible, e.g. use the
`-std`
flag
- Stick to standards wherever possible, e.g. use the `-std` flag
for GNU and Intel C/C++ compilers. Computers are short living
for CLANG, GNU and Intel C/C++ compilers. Computers are short living
creatures, migrating between platforms can be painful. In addition,
creatures, migrating between platforms can be painful. In addition,
running your code on different platforms greatly increases the
running your code on different platforms greatly increases the
reliably. You will find many bugs on one platform that never will be
reliably. You will find many bugs on one platform that never will be
revealed on another.
revealed on another.
-
Before and during performance tuning: Make sure that your code
- Compile your code with optimization, e.g. `-O2` will turn on a moderate level of optimization
delivers the correct results.
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.
Some questions you should ask yourself
:
!!! questions "
Some questions you should ask yourself
"
-
Given that a code is parallel, are the results independent from the
- Given that a code is parallel, are the results independent from the
numbers of threads or processes?
numbers of threads or processes?
-
Have you ever run your Fortran code with array bound and subroutine
- Have you ever run your Fortran code with array bound and subroutine argument checking (the
argument checking (the
`-check all`
and
`-traceback`
flags
`-check all` and `-traceback` flags for the Intel compilers)?
for the Intel compilers)?
- Have you checked that your code is not causing floating point exceptions?
-
Have you checked that your code is not causing floating point
- Does your code work with a different link order of objects?
exceptions?
- Have you made any assumptions regarding storage of data objects in memory?
-
Does your code work with a different link order of objects?
-
Have you made any assumptions regarding storage of data objects in
memory?
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment