-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathOLD_README
84 lines (63 loc) · 3.22 KB
/
OLD_README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
.. Copyright (C) 2004-2012 The Trustees of Indiana University.
Use, modification and distribution is subject to the Boost Software
License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)
~~~~~~~~~~~~
Introduction
~~~~~~~~~~~~
This is a beta version of the Parallel Boost Graph Library (Parallel
BGL), a generic parallel graph library built on and fashioned after
the Boost Graph Library (BGL). This version builds on Active Pebbles
model and its AM++ implementation. If you have any questions,
comments, or require help with the Parallel BGL, please see the
Parallel BGL web page.
We strongly suggest building and executing the test suite before
embarking on writing your own programs. Familiarity with the Boost
Graph Library
(http://www.boost.org/libs/graph/doc/table_of_contents.html) is
assumed.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Configure, build, and install
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This version of the Parallel BGL uses CMake (http://www.cmake.org)
version 2.6.0 or newer to configure itself to the environment. Before
configuring, you will need several software packages available:
- Boost 1.52.0 or newer (available at http://www.boost.org).
- An implementation of MPI-1. We typically test with Open MPI 1.6.x
and IBM MPI on Blue Gene/P
- A decent C++ compiler. We have tested the Parallel BGL with
various versions of ICC 10 and newer, and various versions
of GCC 4.4 or newer (GCC versions as old as 4.3 should also work).
- libNBC version 1.0.1 (1.1.0 is untested at the moment). libNBC is
only necessary if AM++ requires it. Thus, the build system will
not complain if it can't find it, but build errors will ensue if
it is required by AM++.
- AM++ (http://www.crest.iu.edu/projects/am++/)
To configure the Parallel BGL, use one of CMake's configuration tools
and provide it with the location of the Parallel BGL source tree.
- CMake application (Windows, Mac OS)
- cmake-gui: Qt CMake GUI (most platforms)
- ccmake: curses-based interface (available on Unix)
- cmake: command-line interface (everywhere)
Several environment variables are available to aid CMake in locating
your versions of libNBC, AM++, and Boost.
- LIBNBC_ROOT is the root of your libNBC installation
- AM++_ROOT is the root of your AM++ installation with libam++.a
and libam++_mpi.a built
- BOOST_ROOT is the root of your Boost installation, refer to the
FindBoost.cmake module for additional information
Once configured, build the Parallel BGL with your native build
environment, e.g., "make", etc.
To install the Parallel BGL, invoke the "install" target of the
generated makefiles or project.
To test the Parallel BGL, make sure that your MPI environment is
running (e.g., run lamboot) and run "make test" (if using makefiles)
or "ctest -C CONFIG", where CONFIG is either "Debug" or "Release" (if
using Windows).
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Building applications using the Parallel BGL
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
When building Parallel BGL applications, place the include path for
the Parallel BGL headers *before* the include path for the Boost
headers. The Parallel BGL overrides some headers from Boost, so
this is crucial.