Update the Readme in regards to CMake configuration
This commit is contained in:
35
README.md
35
README.md
@@ -58,21 +58,26 @@ To use DRAMSys, first clone the repository.
|
|||||||
|
|
||||||
### Dependencies
|
### Dependencies
|
||||||
|
|
||||||
DRAMSys requires a **C++17** compiler. The build process is based on **CMake** (minimum version **3.24**). Furthermore, the simulator is based on **SystemC**. SystemC is included with FetchContent and will be build automatically with the project. If you want to use a preinstalled SystemC version, export the environment variable `SYSTEMC_HOME` (SystemC installation directory). Also make sure that the SystemC library was built with the same C++ version.
|
DRAMSys requires a **C++17** compiler. The build process is based on **CMake** (minimum version **3.24**). Furthermore, the simulator is based on **SystemC**. SystemC is included with FetchContent and will be build automatically with the project. If you want to use a preinstalled SystemC version, export the environment variable `SYSTEMC_HOME` (SystemC installation directory) and set the CMake option `DRAMSYS_USE_EXTERNAL_SYSTEMC`. Also make sure that the SystemC library was built with the same C++ version.
|
||||||
|
|
||||||
### Building DRAMSys
|
### Building DRAMSys
|
||||||
|
|
||||||
To build the standalone simulator for running memory trace files or traffic generators, create a build folder in the project root directory, then run CMake and make:
|
To build the standalone simulator for running memory trace files or traffic generators, first configure the project using CMake, then build the project:
|
||||||
|
|
||||||
```bash
|
```console
|
||||||
$ cd DRAMSys
|
$ cd DRAMSys
|
||||||
$ mkdir build
|
$ cmake -S . -B build
|
||||||
$ cd build
|
$ cmake --build build
|
||||||
$ cmake ..
|
|
||||||
$ make
|
|
||||||
```
|
```
|
||||||
|
|
||||||
To include **DRAMPower** in your build enable the CMake option `DRAMSYS_WITH_DRAMPOWER`. If you plan to integrate DRAMSys into your own SystemC TLM-2.0 project you can build only the DRAMSys library by disabling the CMake option `DRAMSYS_BUILD_CLI`.
|
To include **DRAMPower** in your build enable the CMake option `DRAMSYS_WITH_DRAMPOWER`:
|
||||||
|
```console
|
||||||
|
$ cmake -B build -D DRAMSYS_WITH_DRAMPOWER=Y
|
||||||
|
```
|
||||||
|
|
||||||
|
If you plan to integrate DRAMSys into your own SystemC TLM-2.0 project you can build only the DRAMSys library by disabling the CMake option `DRAMSYS_BUILD_CLI`.
|
||||||
|
|
||||||
|
In order to include any proprietary extensions such as the Trace Analyzer, enable the CMake option `DRAMSYS_ENABLE_EXTENSIONS`.
|
||||||
|
|
||||||
To build DRAMSys on Windows 10 we recommend to use the **Windows Subsystem for Linux (WSL)**.
|
To build DRAMSys on Windows 10 we recommend to use the **Windows Subsystem for Linux (WSL)**.
|
||||||
|
|
||||||
@@ -80,7 +85,7 @@ To build DRAMSys on Windows 10 we recommend to use the **Windows Subsystem for L
|
|||||||
|
|
||||||
From the build directory use the commands below to execute the DRAMSys standalone.
|
From the build directory use the commands below to execute the DRAMSys standalone.
|
||||||
|
|
||||||
```bash
|
```console
|
||||||
$ cd bin
|
$ cd bin
|
||||||
$ ./DRAMSys
|
$ ./DRAMSys
|
||||||
```
|
```
|
||||||
@@ -89,13 +94,13 @@ The default configuration file is *ddr4-example.json* located in *configs/*, the
|
|||||||
|
|
||||||
To run DRAMSys with a specific configuration file:
|
To run DRAMSys with a specific configuration file:
|
||||||
|
|
||||||
```bash
|
```console
|
||||||
$ ./DRAMSys ../../configs/lpddr4-example.json
|
$ ./DRAMSys ../../configs/lpddr4-example.json
|
||||||
```
|
```
|
||||||
|
|
||||||
To run DRAMSys with a specific configuration file and configuration folder:
|
To run DRAMSys with a specific configuration file and configuration folder:
|
||||||
|
|
||||||
```bash
|
```console
|
||||||
$ ./DRAMSys ../../tests/tests_regression/DDR3/ddr3-example.json ../../tests/tests_regression/DDR3/
|
$ ./DRAMSys ../../tests/tests_regression/DDR3/ddr3-example.json ../../tests/tests_regression/DDR3/
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -109,13 +114,13 @@ There are two ways to couple DRAMSys with **gem5**:
|
|||||||
## Development
|
## Development
|
||||||
Some additional development sources required for tests may be obtained using Git LFS.
|
Some additional development sources required for tests may be obtained using Git LFS.
|
||||||
Make sure to have Git LFS installed through your system's package manager and set up for your user:
|
Make sure to have Git LFS installed through your system's package manager and set up for your user:
|
||||||
```bash
|
```console
|
||||||
git lfs install
|
$ git lfs install
|
||||||
```
|
```
|
||||||
|
|
||||||
To make the additional files available, run:
|
To make the additional files available, run:
|
||||||
```bash
|
```console
|
||||||
git lfs pull
|
$ git lfs pull
|
||||||
```
|
```
|
||||||
|
|
||||||
## Acknowledgements
|
## Acknowledgements
|
||||||
|
|||||||
Reference in New Issue
Block a user