[mvapich-discuss] Large jitter in message transfer
Dan Kokron
daniel.kokron at nasa.gov
Fri Apr 15 13:21:27 EDT 2011
You might consider using TAU in TRACE mode to see what each process is
doing and when it's doing it.
(http://www.cs.uoregon.edu/research/tau/home.php)
Dan
On Fri, 2011-04-15 at 11:46 -0500, Sashi Balasingam wrote:
> Hi all,
>
> I recently started on an MPI-based, 'real-time', pipelined-processing
> application, and the application fails due to large time-jitter in
> sending and receiving messages.
>
> Here are related info -
>
>
>
> 1) Platform:
>
> a) Intel Box: Two Hex-core, Intel Xeon, 2.668 GHz (...total of 12
> cores/box)
>
> b) OS: SUSE Linux Enterprise Server 11 (x86_64) - Kernel \r (\l)
>
> c) MPI Rev: mvapich2-1.6rc2
>
> d) HCA: InfiniBand: Mellanox Technologies MT26428 [ConnectX IB QDR,
> PCIe 2.0 5GT/s] (rev a0)
>
>
>
> 2) Application detail:
>
>
>
> a) My app uses two of these boxes, with IB connection. I launch 11
> processes for a "Pipelined" Image processing application, where Box-1
> has 7, and Box-2 has 4 processes.
>
>
>
> b) Each process waits for a message (sizes vary between 1 KBytes to 26
> KBytes),
>
> then process the data, and outputs a message (sizes vary between 1
> KBytes to 26 KBytes), to next process.
>
> There is an input pkt every 80 micro-sec into this pipeline, and
> typically a job will entails about 500,000 pkts.
>
>
>
> c) MPI transport functions used : "MPI_Isend", MPI_Irecv, MPI_Test.
>
> i) For Receiving messages, I first make an MPI_Irecv call,
> followed by a busy-loop on MPI_Test, waiting for message
>
> ii) For Sending message, there is a busy-loop on MPI_Test to ensure
> prior buffer was sent, then use MPI_Isend.
>
>
>
> d) When the job starts, all these 11 process are put in High priority
> mode ( SCHED_FIFO policy, with priority setting of 99).
>
> The Job entails an input data packet stream (and a series of MPI
> messages), continually at 40 micro-sec rate, for a few minutes.
>
>
>
> 3) The Problem:
>
> a) Once the job starts, about 10% of MPI data xfer occurring between
> the two boxes have a large jitter, ranging from 8 ~ 30 millisec.
>
> This causes some of my internal application input queues to fill-up
> and cause a failure.
>
>
>
> b) I have used a few basic tools to look at CPU usage during job
> running, nothing significant is running other than my app.
>
>
>
> - Any suggestions on improved MPI config settings or OS config/issues
> will be much appreciated.
>
>
>
> - Is there any performance monitoring tool that can monitor CPU
> activity for a few seconds, at 1 milli-sec level resolution ?
>
>
>
> Thanks in advance.SashiBala
>
>
--
Dan Kokron
Global Modeling and Assimilation Office
NASA Goddard Space Flight Center
Greenbelt, MD 20771
Daniel.S.Kokron at nasa.gov
Phone: (301) 614-5192
Fax: (301) 614-5304
More information about the mvapich-discuss
mailing list