forked from ecrc/hicma
-
Notifications
You must be signed in to change notification settings - Fork 0
/
INSTALL
61 lines (32 loc) · 1.65 KB
/
INSTALL
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
# Installation
Installation requires `CMake` of version 3.2.3 at least. To build HiCMA,
follow these instructions:
1. Get HiCMA from git repository
git clone [email protected]:ecrc/hicma
2. Go into hicma folder
cd hicma
3. Get submodules using git as follows. The submodules Chameleon and STARS-H should be compiled and the `PKG_CONFIG_PATH` should be set.
git submodule update --init --recursive
4. Create build directory and go there
mkdir build && cd build
5. Use CMake to get all the dependencies
cmake .. -DCMAKE_INSTALL_PREFIX=/path/to/install/ -DHICMA_USE_MPI=ON
6. Build HiCMA
make -j
7. Build local documentation (optional)
make docs
8. Install HiCMA
make install
9. Add line
export PKG_CONFIG_PATH=/path/to/install:$PKG_CONFIG_PATH
to your .bashrc file to use HiCMA as a library.
Now you can use `pkg-config` executable to collect compiler and linker flags for HiCMA or run the binaries under `/path/to/install/timing/`.
There are `scripts/build.sh` and `scripts/build-nompi.sh` scripts in the repository to build the whole software stack.
# CMake Configuration
The following definitions affect how HiCMA library works:
**HICMA_ALWAYS_FIX_RANK**: Disables rank descriptors. The rank of the input matrix will be uniform
across all tiles. This option can be used to measure the impact of additionally
communicating rank descriptor during computations. If rank descriptor is not communicated,
the total number of messages becomes less.
**HICMA_USE_MPI=[ON,OFF]**: Enables/Disables MPI in HiCMA. This parameter should be set consistently
according to CHAMELEON_USE_MPI.