wlemkows / valgrind

Enhanced Valgrind for Persistent Memory

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Valgrind: an enhanced version for pmem

Build Status

This is the top-level README.md the enhanced version on Valgrind. This version has support for the new CLFLUSHOPT, PCOMMIT and CLWB instructions. It also introduces a new tool called pmemcheck which validates the correctness of stores made to persistent memory. Be aware that this is still a prototype tool.

Please see the file COPYING for information on the license.

The layout is identical to the original Valgrind. The new tool is available in:

  • pmemcheck -- the new persistent memory aware tool

All packages necessary to build this modified version of Valgrind are the same as for the original version.

Note: This branch uses git submodule for VEX subproject. You can use git clone --recursive to download both or execute these commands on existing repository:

$ git submodule init
$ git submodule update

Submodule update should be performed after each branch switch.

Valgrind is built using these command at the top level:

	$ ./autogen.sh
	$ ./configure [--prefix=/where/to/install]
	$ make

To build tests:

	$ make check

To run all regression tests:

	$ make regtest

To run pmemcheck tests only:

	$ perl tests/vg_regtest pmemcheck

To install Valgrind run (possibly as root if destination permissions require that):

	$ make install

For more information on Valgrind please refer to the original README files and the documentation which is available at:

	$PREFIX/share/doc/valgrind/manual.html

Where $PREFIX is the path specified with --prefix to configure.

For information on how to run the new tool refer to the appropriate part of the documentation or type:

	$ valgrind --tool=pmemcheck --help

For more information on the modifications made to Valgrind contact Andy Rudoff (andy.rudoff@intel.com), Tomasz Kapela (tomasz.kapela@intel.com) or Krzysztof Czurylo (krzysztof.czurylo@intel.com).

About

Enhanced Valgrind for Persistent Memory

License:GNU General Public License v2.0


Languages

Language:C 91.4%Language:C++ 3.5%Language:Assembly 1.7%Language:Makefile 1.2%Language:Perl 0.7%Language:Shell 0.6%Language:M4 0.6%Language:Objective-C 0.1%Language:GDB 0.1%Language:Haskell 0.0%Language:Roff 0.0%