Commit a09a1dff authored by Jonathan Jenkins's avatar Jonathan Jenkins

more documentation

parent c29fa7d7
......@@ -27,17 +27,21 @@ working from the CODES master branches, use the ROSS master branch.
If using ccmake to configure, don't forget to set CMAKE_C_COMPILER and
CMAKE_CXX_COMPILER to mpicc/mpicxx
1 - If you are building codes directly from the repository, run
1 - If you are building CODES directly from the repository, run
./prepare.sh
2 - Configure codes. This can be done in the source directory or in a
2 - CODES requires pkg-config and non-ancient versions of flex/bison (i.e.
there have been problems with the Mac version). Use your favorite
package manager to obtain them.
3 - Configure CODES. This can be done in the source directory or in a
dedicated build directory if you prefer out-of-tree builds. The CC
environment variable must refer to an MPI compiler.
mkdir build
cd build
../configure --prefix=/path/to/codes-base/install CC=mpicc PKG_CONFIG_PATH=/path/to/ross/install/lib/pkgconfig
../configure --prefix=/path/to/codes/install CC=mpicc PKG_CONFIG_PATH=/path/to/ross/install/lib/pkgconfig
To enable network tracing with dumpi
(http://sst.sandia.gov/about_dumpi.html), use the option
......@@ -57,15 +61,15 @@ working from the CODES master branches, use the ROSS master branch.
<DARSHAN_PREFIX>/lib/pkgconfig to your PKG_CONFIG_PATH environment
variable before calling configure.
3 - Build and install codes-base
4 - Build and install CODES
make && make install
4 - (optional) run test programs
5 - (optional) run test programs
make tests && make check
5 - codes-base uses flex and bison (or lex and yacc) to generate several
6 - codes uses flex and bison (or lex and yacc) to generate several
parsers. These tools auto-generate C source files. To get around versioning
issues, we've distributed the auto-generated sources directly. To remove
all of the autogenerated files for these parsers, execute
......
......@@ -161,6 +161,30 @@ so keep the following limitations in mind when using it.
* There is currently no way to specify a "create" flag to open.
* Variables are expected to be a single lowercase character.
==== "Mock" IO workload
The mock IO workload generator creates a sequential workload of N requests of
size M. The generated file ID is either an optional input or 0 - there's also
an option to add a (simulated) processes rank to the file IDs, giving in effect
a unique file per rank. Relevant configuration parameters are:
* mock_num_requests - the number of requests
* mock_request_size - the size of each request
* mock_request_type - the type of request ("read" or "write")
* mock_file_id (optional) - the file ID to use, default 0
* mock_use_unique_file_ids (optional) - if non-zero, add the workload
processor's rank to the file ID. Default is 0.
* mock_rank_table_size (optional) - the hash table size to store the ranks in.
For minimal collisions, choose a value larger than the expected workload
number of ranks.
==== Recorder IO workload
TODO...
==== Checkpoint IO workload
TODO...
=== Network
Our primary network workload generator is via the DUMPI tool
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment