Skip to content

Commit 8df4db7

Browse files
authored
Merge pull request #302 from LLNL/hotfix/docs
Bugfix in documentations
2 parents b49d865 + cc6ba03 commit 8df4db7

File tree

3 files changed

+35
-19
lines changed

3 files changed

+35
-19
lines changed

.readthedocs.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
version: 2
2+
3+
build:
4+
os: ubuntu-22.04
5+
tools:
6+
python: "3.12"
7+
8+
mkdocs:
9+
configuration: mkdocs.yml

README.md

Lines changed: 25 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5,22 +5,23 @@
55
Metall: A Persistent Memory Allocator for Data-Centric Analytics
66
===============================================
77

8-
* Provides rich memory allocation interfaces for C++ applications that
9-
use persistent memory devices to persistently store heap data on such
10-
devices.
11-
* Creates files in persistent memory and maps them into virtual memory
12-
space so that users can access the mapped region just as normal memory
13-
regions allocated in DRAM.
14-
* Actual persistent memory hardware could be any non-volatile memory (NVM) with file system support.
15-
* To provide persistent memory allocation, Metall employs concepts and
16-
APIs developed by
17-
[Boost.Interprocess](https://www.boost.org/doc/libs/1_69_0/doc/html/interprocess.html).
18-
* Supports multi-thread
19-
* Also provides a space-efficient snapshot/versioning, leveraging reflink
20-
copy mechanism in filesystem. In case reflink is not supported, Metall
21-
automatically falls back to regular copy.
22-
* See details: [Metall overview slides](docs/publications/metall_101.pdf).
23-
8+
- A memory allocator enables applications to transparently allocate data into a file system.
9+
10+
- From applications, Metall looks like a normal heap allocator.
11+
12+
- Applications can keep their data beyond single process life cycles and reattach the data in succeeding runs.
13+
14+
- Leverages the memory-mapped file mechanism (i.e., [mmap(2)](https://man7.org/linux/man-pages/man2/mmap.2.html)) to _map_ application data in files to the main memory.
15+
16+
- Employs the API developed by [Boost.Interprocess](https://www.boost.org/doc/libs/1_69_0/doc/html/interprocess.html).
17+
18+
- Useful for allocating C++ data structures (including STL containers).
19+
20+
- Incorporates state-of-the-art allocation algorithms.
21+
22+
- Provides a space-efficient snapshot/versioning, leveraging the reflink copy mechanism in file systems.
23+
24+
- See details: [Metall overview slides](docs/publications/metall_101.pdf).
2425

2526
# Getting Started
2627

@@ -62,7 +63,9 @@ However, we haven't tested it intensively.
6263
Also, Boost C++ Libraries 1.69 or more may be required
6364
if one wants to build Metall with Clang + CUDA.
6465

65-
## Metall with Spack
66+
## Package Manager Support
67+
68+
### Metall with Spack
6669

6770
Metall package is also available on [Spack](https://spack.io/).
6871

@@ -82,6 +85,11 @@ spack load metall
8285
g++ -std=c++17 your_program.cpp -lstdc++fs -I${BOOST_ROOT}/include -I${METALL_ROOT}/include
8386
```
8487

88+
### Metall with Connan
89+
90+
Metall is also available on [Conan](https://conan.io/), thanks to the [DICE](https://github.com/dice-group) research group.
91+
Conan Metall package information is [here](https://conan.io/center/recipes/metall).
92+
8593

8694
## Use Metall from Another CMake Project
8795

mkdocs.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
21
site_name: Metall
32
site_author: 'Keita Iwabuchi (LLNL), Roger A Pearce (LLNL), and Maya B Gokhale (LLNL)'
4-
copyright: Copyright 2020 Lawrence Livermore National Security, LLC
3+
copyright: Copyright 2023 Lawrence Livermore National Security, LLC
54

65
docs_dir: 'docs/readthedocs'
76
theme: 'readthedocs'

0 commit comments

Comments
 (0)