Skip to content
Snippets Groups Projects
Commit 4e3ab2d3 authored by Mikhail Khalilov's avatar Mikhail Khalilov
Browse files

update artifacts

parent 29e75dac
Branches
No related merge requests found
[submodule "pspin"]
path = pspin
url = https://github.com/spcl/pspin.git
url = https://github.com/miharulidze/pspin.git
......@@ -5,10 +5,12 @@ SHELL ["/bin/bash", "-c"]
# Install prerequisites
RUN apt update -y && \
apt install -y curl git perl python python3 gengetopt \
apt install -y curl git perl python python3 python3-pip gengetopt \
make autoconf g++ flex bison ccache libgoogle-perftools-dev numactl \
perl-doc libfl2 libfl-dev zlib1g zlib1g-dev gawk libncurses5 help2man
RUN pip3 install seaborn pandas numpy
# Build latest Verilator from sources
WORKDIR /tools/
......@@ -33,4 +35,6 @@ ENV RISCV_GCC_ROOT="/tools/riscv-gcc/"
RUN curl -L -O spclstorage.inf.ethz.ch/~digirols/pspin/riscv-gcc-ubuntu.tar.gz && \
tar -xf /tools/riscv-gcc-ubuntu.tar.gz -C /tools/ && \
chmod 777 -R ${RISCV_GCC_ROOT} && \
rm /tools/riscv-gcc-ubuntu.tar.gz
\ No newline at end of file
rm /tools/riscv-gcc-ubuntu.tar.gz
RUN mkdir /opt/pspin/examples/mt_apps/logs
# PsPIN/OSMOSIS
## Running the code with Docker
## Verilator experiments
### Set up Docker container with the environment (15 min)
1) `$ git clone git@spclgitlab.ethz.ch:mkhalilov/pspin-osmosis.git`
2) `$ cd ./pspin-osmosis/ && git submodule update --init --recursive`
3) `$ docker-compose up -d`
### Build simulation model (up to 1 hour)
4) `$ docker ps # get the containerID`
5) `$ docker exec -it <containerID> bash`
6) `$ cd /opt/pspin/`
7)
```
$ cat sourceme-template.sh | \
sed "s%RISCV_GCC=%RISCV_GCC=/tools/riscv-gcc/bin/%g" | \
sed "s%PSPIN_HW=%PSPIN_HW=/opt/pspin/hw/%g" | \
sed "s%PSPIN_RT=%PSPIN_RT=/opt/pspin/sw%g" > sourceme.sh
```
8) `$ source ./sourceme.sh`
9) `$ cd ./hw/verilator_model/`
10) `$ VERILATOR_COMPILER_WORKERS=$(nproc) make release`
11) `$ cd ../../examples/empty/`
12) `$ make deploy && make driver`
13) `$ make run`
7) `$ source ./sourceme.sh`
8) `$ cd ./hw/verilator_model/`
9) `$ VERILATOR_COMPILER_WORKERS=$(nproc) make release`
Subproject commit bd0eee678038b63c513a1c588b0a21e6f6e3f3fb
Subproject commit 637e2c781f94299ba564354376f415cd2d372d71
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