Skip to content

Latest commit

 

History

History
81 lines (45 loc) · 2.21 KB

README.md

File metadata and controls

81 lines (45 loc) · 2.21 KB

Main experiments for our paper "InferDB: In-Database Machine Learning Inference Using Indexes".

We evaluate InferDB on a server with an AMD-EPYC-7742 2.25GHz CPU (10 cores used), 80 GiB RAM, and 8x3.2 TB SAS SSDs (RAID5).

Requisites

Minimum Hardware

  • 80 GiB memory
  • 120 GiB storage

Software

  • Docker

Supported CPU architechtures:

  • arm64
  • amd64

Running the experiments

First, clone the code repository and download InferDB's docker image:

git clone https://github.com/hpides/inferdb

docker pull hpides/inferdb

Start a container. The entryscript of the image will configure the Postgres instance, install the PGML extension, and uncompress the data used in the paper's main experiments:

docker run -it --shm-size=4g --memory-swap -1 --name inferdb hpides/inferdb sleep infinity

To reproduce the standalone experiments, Table 1 and Table 2 in the paper, run:

# --iterations control the number of runs per model for each dataset
# --paper_data if true only considers the models reported in table 2
# To approximate the reported results you should go with: --iterations 5 --paper_models True
# To get all results set: --iterations 5 --paper_models False

docker exec -it inferdb bash /app/inferdb/bash_scripts/standalone_experiments/standalone_experiments.sh --iterations 1 --paper_models True

To reproduce the postgres experiments, Table 3 in the paper, run:

# --iterations control the number of runs per model for each dataset
# --paper_data if true only considers the models reported in table 2
# To approximate the reported results you should go with: --iterations 5 --paper_models True
# To get all results set: --iterations 5 --paper_models False

docker exec -it inferdb bash /app/inferdb/bash_scripts/pg_experiments/pg_experiments.sh --iterations 1 --paper_models True

Copy the tables from the container to the host:

docker cp inferdb:/app/inferdb/experiments/plots/latex/output/ ./inferdb/experiments/plots/latex/

Docker image was built using:

docker buildx build -f Dockerfile.local --platform linux/amd64,linux/arm64 -t hpides/inferdb .