Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: [OMPI devel] Integrating the memchecker branch
From: Rainer Keller (keller_at_[hidden])
Date: 2008-01-08 15:11:48


Hello dear all,

WHAT:
We would like to integrate the changes on the memchecker-branch to trunk, as
planned in the

WHY:
The checking offers memory checking for certain User and OMPI-internal errors,
like buffer overruns, size mismatches, checks for wrong send/receive buffers.

WHERE: OMPI trunk and v1.3 phase3

WHEN:
Integration into Trunk of memchecker branch: 25.1. (although off-by-default,
this leaves enough time before Feature Freeze on 8.2.)

TIMEOUT: None
===============================================================

The memchecker branch contains checks for memory buffer faults either in the
User-Code or in ompi-code itself.
It uses the valgrind-API to set/reset buffer validity of the user buffers
passed to the MPI-layer. Additionally ompi-internal datatypes are checked
for.
Both are configurable using the flags:
  --enable-memchecker
  --with-valgrind=DIR (if needed)

A decent/recent valgrind is needed (for getting and setting VBITS/using the
newer macros). The valgrind-version is being checked for, at least version
3.2.0 is required.

The actual checking is done in the MPI-layer, in order not to trap any
(correct) access in the BTL, the user buffer is reset to accessible in the
PML-layer (currently OB1 -- others won't make much sense?).

The default behaviour is to *NOT* enable memchecker.
If it is enabled, but not valgrind is being run, the costs for the buffer
checks are minimal, the costs for each ompi-datastructure (like datatype, or
communicator passed) is not.
Further information regarding penalties and performance may be found in:
http://www.open-mpi.org/papers/parco-2007

Comments from the Paris meeting have been integrated.
Are there any objections or hints?

With best regards,
Shiqing and Rainer

PS: If --enable-memchecker is on, --enable-debug should be on as well to make
sense.

-- 
----------------------------------------------------------------
Dipl.-Inf. Rainer Keller   http://www.hlrs.de/people/keller
 HLRS                          Tel: ++49 (0)711-685 6 5858
 Nobelstrasse 19                  Fax: ++49 (0)711-685 6 5832
 70550 Stuttgart                    email: keller_at_[hidden]     
 Germany                             AIM/Skype:rusraink
"Emails save time, not printing them saves trees!"