- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
My fortran program compile with -xAVX, but it runs failed. When I add -traceback to compile, it runs success. How can I debug it.
Any help will be appreciated.
Any help will be appreciated.
Link Copied
5 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It two threads program runs by mpich1.2.7.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
not enough information to help you.
what compiler version?
What is the failure? Is it a segfault and did you read the article on how to deal with runtime seg faults? -heap-arrays and all that?
for MPI, remember that ulimit may not be passed to the spawn child processes, so put this in your .bashrc.
-traceback needs -g as well. but yes, the code can change with -traceback.
You may need to get this into a debugger.
what compiler version?
What is the failure? Is it a segfault and did you read the article on how to deal with runtime seg faults? -heap-arrays and all that?
for MPI, remember that ulimit may not be passed to the spawn child processes, so put this in your .bashrc.
-traceback needs -g as well. but yes, the code can change with -traceback.
You may need to get this into a debugger.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Compiler version is 12.1.0.
It outputs heap arrays, when it run failed. And I cannot point which sentence is wrong.
What do you mean by "the article on how to deal with runtime segfaults", could you get the link to the article?
I add -g with -traceback, it runs ok.
It outputs heap arrays, when it run failed. And I cannot point which sentence is wrong.
What do you mean by "the article on how to deal with runtime segfaults", could you get the link to the article?
I add -g with -traceback, it runs ok.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
A program that runs correctly with one set of options and incorrectly with another set of options (given that neither set of options changes the code semantically or linkage-wise) is an indication that either
(i) the program has one or more bugs that cause unpredictable run-time behavior
OR
(ii) there is a bug in the compiler or the libraries that are linked into the program.
Type (i) is the most common type of bug. For some users it is difficult to describe. Given a good description and a small "reproducer" (see below), this type of bug is often easy to fix.
Type (ii) is quite rare, but is more difficult to pinpoint, describe and fix.
Is it not possible to tell you how to fix the bug without seeing the source code of your program. Had that been possible, computer bugs would have become part of mythology.
Please construct a small example that displays the problem, and post it here with details on how to reproduce the problem.
There is a link to an article regarding SegFaults at the top of this forum.
(i) the program has one or more bugs that cause unpredictable run-time behavior
OR
(ii) there is a bug in the compiler or the libraries that are linked into the program.
Type (i) is the most common type of bug. For some users it is difficult to describe. Given a good description and a small "reproducer" (see below), this type of bug is often easy to fix.
Type (ii) is quite rare, but is more difficult to pinpoint, describe and fix.
Is it not possible to tell you how to fix the bug without seeing the source code of your program. Had that been possible, computer bugs would have become part of mythology.
Please construct a small example that displays the problem, and post it here with details on how to reproduce the problem.
There is a link to an article regarding SegFaults at the top of this forum.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
you might want to use IDB to debug your Fortran application. You can also use Intel Inspector XE to search for memory errors.
Symptoms like the one you described are typical for heisen-bugs (uninitialized memory, dangling pointers, ...) which require in-depth debugging to find the root-cause.
We cannot exclude a compiler bug, though. However, we're only able to help you if there's a (small) reproducer for us to verify.
Good luck & best regards,
Georg Zitzlsberger
you might want to use IDB to debug your Fortran application. You can also use Intel Inspector XE to search for memory errors.
Symptoms like the one you described are typical for heisen-bugs (uninitialized memory, dangling pointers, ...) which require in-depth debugging to find the root-cause.
We cannot exclude a compiler bug, though. However, we're only able to help you if there's a (small) reproducer for us to verify.
Good luck & best regards,
Georg Zitzlsberger

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