- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Note - the article Lei has attached and annotated is How to Gain Control of Debugging a Fortran Coarray Application, which I wrote many years ago. I don't recognize the MPI error messages shown.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hallo, Steve,
Thanks for your note!
Could you repeat my error ? or if you have some examples which could debug coarray?
Regard,
Lei
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You didn't follow the instructions exactly, as you inserted:
use Coarray_Debugging, only: Enable_Coarray_Debugging
when the article said to use:
use Coarray_Debugging
I'm not sure this mattered, though.
I did run into some issues when my system had more images than the code wanted, but when I restricted it to 8 images, I was able to debug image 2, stepping through the program code, and the program output:
Maximum wind speed measured is 11.20000 at station 42003
Highest mean wind speed is 10.52308 at station 42003
Lowest mean wind speed is 3.376923 at station 42035
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hallo, Steve,
According your instruction, I have repeated the debug process and get the same error.
I find even I do delete the module "Coarray_Debugging", the error still happens, and similiar information as before.
(Refer to the attached files)
This means the error for me related to "Distributed Memory (/Qcoarray:distributed)", in assemblage between OneAPI and MPI.
Regards
Lei
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Oh... Distributed. No, that won't work. Use Shared for debugging.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hallo, Steve,
in the file "MySystem.docx" attached before, I have already mentioned: "With For Shared Memory (/Qcoarray:shared), the processes will be finished quickly without stopping. "
For me not possible to debug using Shared Memory.
regards,
Lei
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It worked for me when I followed the instructions in the article.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
More test results:
**********************************************************
With For Shared Memory (/Qcoarray:shared)
--------------------------------
excute the code in MS Visual Studio 2022,
With or without "call Enable_Coarray_Debugging":
the processes will be quickly ended without stop at any debug points,
and no output from code are found.
--------------------------------
excute the code using cmd,
with "call Enable_Coarray_Debugging":
D:\_Jiang\Temp\Intel_Error8\weather_parallel - Kopie\Console2\x64\Debug>Console2.exe
Image 2: Console2.exe(7624)
Image 1: Console2.exe(13664)
Comment: The process waits here without end
--------------------------------
excute the code using cmd,
without "call Enable_Coarray_Debugging":
D:\_Jiang\Temp\Intel_Error8\weather_parallel - Kopie\Console2\x64\Debug>Console2.exe
Maximum wind speed measured is 11.20000 at station 42003
Highest mean wind speed is 10.52308 at station 42003
Lowest mean wind speed is 3.376923 at station 42035
Comment: The process finishes normally
**********************************************************
With For Single Image (/Qcoarray:single),
excute the code in MS Visual Studio 2022:
--------------------------------
when without "call Enable_Coarray_Debugging",
the processes will be finished with good debug, and it finishes normally.
--------------------------------
when with "call Enable_Coarray_Debugging",
the processes will work only to the debug point "call SLEEPQQ(500)",
after that, the code seems always call SLEEPQQ(500).
**********************************************************

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