Community
cancel
Showing results for 
Search instead for 
Did you mean: 
ArthurRatz
Black Belt
156 Views

Is there any difference between running an MPI program on Intel Xeon and Core i7 processors?

Jump to solution

Dear Collegues, I've got a question: Is there basically any difference between running an MPI program on Intel Xeon and Core i7 processors?

I heard that since an MPI program is running on Intel Xeon processor, then it's executed in a different way. For example, if you run an MPI program on Intel Xeon processor, then all processes has been launched by mpiexec utility are executed in the order of their ranks e.g. 0,1,2,3,4,5,6,7,... and if you run the program on Intel Core i7 processor, then those processes executed in arbitrary order.

Waiting for your reply.

Cheers, Arthur.

 

0 Kudos
1 Solution
Gergana_S_Intel
Employee
156 Views

Hi Arthur,

I'd like to 2nd Kittur's comments.  There are no difference in how we treat initial process placement on any Intel architecture.  We generally try to start some number of ranks simultaneously so the first machine we connect to is the first one where we place the first set of ranks.

If you really want to be very specific about where the ranks are located, you can use the -host or -machinefile options for Intel MPI.

If you have any questions about those, let me know.

~Gergana

View solution in original post

16 Replies
Kittur_G_Intel
Employee
156 Views

Hi Arthur,
I am not aware of any difference in the launching of the processes per-se with reference to the processor. I'll double check that with the MPI team as well and let you know.
_Kittur

ArthurRatz
Black Belt
156 Views

Thanks, Kittur. I'll be waiting for your reply.

Kittur_G_Intel
Employee
156 Views

Hi Arthur,
I discussed with the MPI team and they said generally it should not make a difference but sometimes their could be a different scheme (internal) depending on the context.  But, the user can use some runtime options. 

Also, for MPI related questions it's best for you to post your questions in the Intel Clusters and HPC Technology forum where you'll get those issues resolved by support folks specialized in MPI. 

So, I"ll transfer your issue to that forum and someone will respond to you accordingly and I'll let them know as well.

_Kittur

Gergana_S_Intel
Employee
157 Views

Hi Arthur,

I'd like to 2nd Kittur's comments.  There are no difference in how we treat initial process placement on any Intel architecture.  We generally try to start some number of ranks simultaneously so the first machine we connect to is the first one where we place the first set of ranks.

If you really want to be very specific about where the ranks are located, you can use the -host or -machinefile options for Intel MPI.

If you have any questions about those, let me know.

~Gergana

View solution in original post

ArthurRatz
Black Belt
156 Views

Thanks Collegues for your replies.

ArthurRatz
Black Belt
156 Views

Obviously that the ordered rank execution is actually a process synchronization problem which can persist regardless of what CPU you're running your program on.

ArthurRatz
Black Belt
156 Views

And one more question, which processor Intel Core i7 or Intel Xeon is more efficient to execute MPI programs ?

ArthurRatz
Black Belt
156 Views

Of course, Intel Xeon is the most preferable server CPUs to execute MPI and OpenMP programs.

ArthurRatz
Black Belt
156 Views

Intel Xeon processor has over 40MB of last level cache that allows to optimize the performance of any MPI or OpenMP program

ArthurRatz
Black Belt
156 Views

The most of today's computational clusters are built based on using Intel Xeon processors.

ArthurRatz
Black Belt
156 Views

You can statically assign ranks by using mpiexec runtime options such as mpiexec -binding -prepend-rank -ordered-output -np 4 ./a.out

ArthurRatz
Black Belt
156 Views

mpiexec -binding -prepend-rank -ordered-output -np 4 ./a.out works regardless of what particular CPU you execute your MPI program on.

ArthurRatz
Black Belt
156 Views

Intel Xeon processors are used solely to optimize performance of computational cluster.

ArthurRatz
Black Belt
156 Views

And it's true that there's actually no difference what particular processor to use to execute a certain mpi process.

ArthurRatz
Black Belt
156 Views

A typically large amount of last level cache provides the best performance compared to Intel Core i7 processors.

ArthurRatz
Black Belt
156 Views

By default, the processes should be executed in an arbitrary order, there's no need to map them to specific processors.

Reply