- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
Abhi
--
[fortran] Program Sample_COArray
Use, Intrinsic :: ISO_Fortran_Env
Implicit None
Integer :: JLink kopiert
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
This might be a documented behavior. In COArray environment the seperate images are typically run on seperate systems. Therfore your
Write(OUTPUT_UNIT,"(A,I0)")"IamImageNumber:",THIS_IMAGE()
Flush(OUTPUT_UNIT)
Will not proceed directly to the same file. What is likely happening is the file output (at least by the non-MasterImage) is being managed by a helper thread (on each system). My guess is the message delivery from the non-MasterImage to the MasterImage has not yet occured. Look in the advance API documentation to see if there is a file (message) sync function.
Jim Dempsey
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
I tried the program on my Nehalem system (8 threads) and always got the "number of images" print at the end. Can you show me the output of several runs showing the difference? I assume you are using the default shared memory environment.
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
What I was attempting to say (postulate) is:
SYNC ALL
may correctly synchronize the computational threads of each system
but it may be failing to synchronize the additional helper threads used for messaging I/O to the master system.
>>I tried the program on my Nehalem system (8 threads)
What is the user's configuration?
1P, nP SMP, cluster?
Jim Dempsey
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
There are no helper threads here.
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
Hi Steve
Did you try this with update 7 or 6? I am still using the latter.
Abhi
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
Abhi
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
I was able to reproduce what you are seeing. I could reproduce this on a 6-core Westmere server WITH hyperthreading turned on.
From your sample you are running 4 images. How many PHYSICAL cores do you have - what is your processor?
I suspect this is a bug due to running on hyperthreaded cores. And you are correct, the FLUSH followed by SYNC ALL should flush the IO buffers. So this is a bug, but again, I think it's hyperthreading related.
let me know if hyperthreading is turned on in your system. Also, what OS - Win7, ia32 or x64?
ron
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
Hi Ron
My system is:
(a) Win7 (64bit) Professional with Service Pack 1
(b) VS2010 Professional
(c) IVF 12 update 7
(d) Intel Xeon W3565 -- it has 4 cores. Hyperthreading is OFF. That is, if I open task manager I see 4 "cpu windows".
Steve, I think it is a bug in the Intel implementation as Ron has suggested. (Numrich/Reid document section 10 paragraph 4 makes a mention of using both FLUSH and SYNC in casessuch as when order is important or data from one image is to read by other.) But I may be wrong. Since you and Ron have posted two different opinions, I am confused.
Abhi
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
- RSS-Feed abonnieren
- Thema als neu kennzeichnen
- Thema als gelesen kennzeichnen
- Diesen Thema für aktuellen Benutzer floaten
- Lesezeichen
- Abonnieren
- Drucker-Anzeigeseite