Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
29274 Discussions

Question about Intel's Co-array Fortran for Windows

Zhanghong_T_
Novice
2,109 Views
Dear administrator,

I have some questions about Intel's Co-array Fortran for Windows. The most important thing I want to know is that how to configure the project to let it work on distributed machines.

The original thread is here:
http://software.intel.com/en-us/forums/showthread.php?t=61810&o=a&s=lr

Could you please help me to check my problem?

Thanks,
Zhanghong Tang
0 Kudos
16 Replies
Zhanghong_T_
Novice
2,109 Views
Dear Dr. TimP,


Thank you very much for your introduction the Co-array Fortran. I tested a sample case (the attached file) and found that the output is not what I excepted. Could you please help me to check this problem?

In addition, could you please tell me how to configure the project if I wish to execute the program on two machines?
computer 1:
IP: 192.168.1.2
OS: Windows xp 32 bit

computer 2:
IP: 192.168.1.3
OS: Windows 7 64bit


Thanks,
Zhanghong Tang
0 Kudos
TimP
Honored Contributor III
2,109 Views
Now it is time to start up your discussion in the Windows Fortran forum. I couldn't figure out how to shift your posts there.
0 Kudos
Steven_L_Intel1
Employee
2,109 Views
I moved the posts here.

Please read Building and Running a Distributed Coarray Application on Windows. Note that you are required to have a Windows-based cluster running Windows HPC Server 2008 or Windows Compute Cluster Server 2003. plus a license for Intel Cluster Toolkit.

Furthermore, I don't think your program, even if it is run across the cluster, will do what you want regarding executing commands on the different nodes. I gather you are looking at Coarray Fortran as a way to run an otherwise normal application on multiple systems - that's not what it's designed for.
0 Kudos
Zhanghong_T_
Novice
2,109 Views
Dear Dr. Steve,

Thank you very much for your kindly reply. I guess the images of the application by Co-array Fortran will run at distributed machines, so I think it can launch the external programs at different machines. Isn't it?

On the other hand, since the Co-array Fortran is so powerful, I will consider to write pure Fortran code for distributed computation.

However, I wish the compute can be done by loose connected machine, i.e., the computers can have different windows OS versions, for example, windows xp and windows 7, instead of windows HPC server 2008. I only need to setup the configure file by IP address. Can I do like this?

By the way, the attached code still have some problem to run on my machine (the example can run correctly), could you please help me to check the problem?


Thanks,
Zhanghong Tang
0 Kudos
Steven_L_Intel1
Employee
2,109 Views
Distributed coarray applications must run in a cluster environment under the control of Intel MPI. There is no provision for running on random network-connected dissimilar systems.

Your program depends on a module not supplied, and you don't say what goes wrong. Since coarrays are not a solution to this problem, I suggest you look for another way of doing remote execution.
0 Kudos
Zhanghong_T_
Novice
2,109 Views
Dear Dr. Steve,

Thank you very much for your kindly reply. Let's discuss the problem of my code at first.

The output of the program is as follows:
D:\tang\ansoft\logging\bjut307-PC\coarray\coarray_samples\Debug>coarray_samples.
exe
Hello from image 1 out of 8 total images
Hello from image 4 out of 8 total images
Hello from image 2 out of 8 total images
Hello from image 8 out of 8 total images
Hello from image 7 out of 8 total images
Hello from image 5 out of 8 total images
Hello from image 3 out of 8 total images
Hello from image 6 out of 8 total images
myid= 1
myid= 1 2
1 C:\Program Files (x86)\Ansoft\Maxwell14.0\maxwell.exe
1
-runscriptandexit "D:\tang\ansoft\logging\bjut307-PC\20111022\MIT5530_parallel\

project\MIT5530_1.vbs"



and then the program hangs there. From task manager I can found 9 progress of coarray_sample.exe, the CPU usage of one is 0 and others are 12%.

I wish the program have the following output:
Hello from image 1 out of 8 total images
Hello from image 4 out of 8 total images
Hello from image 2 out of 8 total images
Hello from image 8 out of 8 total images
Hello from image 7 out of 8 total images
Hello from image 5 out of 8 total images
Hello from image 3 out of 8 total images
Hello from image 6 out of 8 total images
myid= 1
myid= 3
myid= 2
myid= 4
myid= 6
myid= 5
myid= 7
myid= 8 (no necessary this order)
myid= 1 2
myid= 3 2
myid= 2 2
myid= 4 2
myid= 6 2
myid= 5 2
myid= 7 2
myid= 8 2 (no necessary this order)
1 C:\Program Files (x86)\Ansoft\Maxwell14.0\maxwell.exe
1
-runscriptandexit "D:\tang\ansoft\logging\bjut307-PC\20111022\MIT5530_parallel\

project\MIT5530_1.vbs"
2 C:\Program Files (x86)\Ansoft\Maxwell14.0\maxwell.exe
2
-runscriptandexit "D:\tang\ansoft\logging\bjut307-PC\20111022\MIT5530_parallel\

project\MIT5530_2.vbs" (no necessary this order)



And then the program exit successfully.


Could you please help me to check what lead to this problem? How to modify the code to let it has the above output?


Thanks,
Zhanghong Tang




0 Kudos
Steven_L_Intel1
Employee
2,109 Views
I often find coarray processes doing what you observed when an error occurs. Unfortunately, debugging coarray applications, especially on Windows, is presently very difficult.

I will try to look at your program and see what I can figure out sometime next week.
0 Kudos
Zhanghong_T_
Novice
2,109 Views
Dear Dr. Steve,

Thank you very much for your kindly reply.


Zhanghong Tang
0 Kudos
Zhanghong_T_
Novice
2,109 Views
Dear Dr. Steve,

Is there any progress for checking the problem of my code?

Thanks,
Zhanghong Tang
0 Kudos
Wendy_Doerner__Intel
Valued Contributor I
2,109 Views

Steve should be able to check in with you later this week. He has been affected by the NE snowstorm so unable to reply.

------

Wendy

Attaching or including files in a post

0 Kudos
Steven_L_Intel1
Employee
2,109 Views
It will still be a few more days before I am able to try this. An unusual snowstorm on Oct. 29 knocked out power for a large region in the northeast US and things are not all back to normal yet. (In particular, my house is still without power and heat.) Your patience is appreciated.
0 Kudos
Zhanghong_T_
Novice
2,109 Views
Oh, it's sound terrible. Wish you and your family be OK soon.


Thanks,
Zhanghong Tang
0 Kudos
Zhanghong_T_
Novice
2,109 Views
Dear Dr. Steve,

Wish you have recovered from the snowstorm!

I still have no idea about the results of my code. Could you please help me to check this problem?


Thanks,
Zhanghong Tang
0 Kudos
Zhanghong_T_
Novice
2,109 Views
Dear Dr. Steve,

Sorry to bother you again.

I want to know whether latest version of Fortran compiler has solved this problem or not.

Thanks,
Zhanghong Tang
0 Kudos
Wendy_Doerner__Intel
Valued Contributor I
2,109 Views
Zhanghong,
Steve is on vacation this week, but should be back to respond next week.
I don't see any known issue linked to your thread so I would suspect this is is not fixed in the Update 8 compiler posting this week.
0 Kudos
Steven_L_Intel1
Employee
2,109 Views
Zhanghong,

I don't think you can do what you want with coarrays. Doing things that cause the program to wait in the OS or sleep will prevent a coarray program from working properly. Also, I note that you want to use a mixed-architecture cluster. At a minimum you will need to build a 32-bit application to run on both 32-bit and 64-bit systems.

Do you actually have a Windows cluster configured using Windows HPC Server?

I suggest looking into alternate methods for spawning commands on multiple systems.
0 Kudos
Reply