Skip to content

Commit 438e9eb

Browse files
authored
Create README.md
1 parent 98e8ed0 commit 438e9eb

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

README.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
The [Chimbuko performance analysis tool](https://github.com/CODARcode/Chimbuko) outputs a "provenance database" containing detailed information on captured performance anomalies and run statistics, stored in a JSON document-store format via the Mochi "Sonata" library built upon UnQlite.
2+
The ChimbukoProvDBconvert tool converts the UnQlite database to a DuckDB relational database format, allowing the exploitation of more sophisticated data analysis tools such as Pandas, and is part of Chimbuko's offline analysis framework.
3+
4+
# Installation
5+
6+
- [Mochi Sonata](https://github.com/mochi-hpc/mochi-sonata)
7+
- [DuckDB](https://duckdb.org/)
8+
9+
We recommend installing both libraries using [Spack](https://github.com/spack/spack). Once installed
10+
11+
```
12+
./autogen.sh
13+
./configure --prefix=/your/install/path --with-duckdb=/path/to/duckdb/install
14+
make
15+
make install
16+
```
17+
18+
If Spack was used to install DuckDB, you can use `spack location -i duckdb` to locate the install path.
19+
20+
The C++ compiler can be specified by configuring as `CXX=your_compiler ./configure ...`
21+
22+
# Usage
23+
24+
For basic usage, simply run
25+
```
26+
chimbuko_provdb_convert /path/to/chimbuko/provdb/directory your_output_file -nshards ${nshards}
27+
```
28+
where `${nshards}` is the number of database shards.
29+
30+
### Advanced options:
31+
- `-nrecord_max <num>` : Cap on how many records to import per collection (over all shards in the case of the main DB)."
32+
- `-specific_records_anom <shard> <idx1.idx2.idx3>` : In this shard, parse only specific records from the "anomalies" collection. Indices should be in the form $shard#$idx (eg 1:32) separated by a period (.). This overrides -nrecord_max for this shard but still counts towards it.
33+
- `-specific_records_normal <shard> <idx1.idx2.idx3>`: In this shard, parse only specific records from the "normalexecs" collection. cf. above.
34+
- `-specific_records_funcstats <idx.idx2.idx3....>`: As above but for the "func_stats" collection of the global database.
35+
- `-specific_records_ad_model <idx.idx2.idx3....>`: As above but for the "ad_model" collection of the global database.

0 commit comments

Comments
 (0)