Skip to content

Commit

Permalink
Updated README
Browse files Browse the repository at this point in the history
  • Loading branch information
RasoulAM committed Mar 25, 2022
1 parent 1cd6576 commit 9e0d9f9
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 15 deletions.
26 changes: 13 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,18 @@ Parameter | Function
-w | Path of the directory in which the results are written (the name of the file is a random number) | -
-v | Batched comparisons | true

## Examples
```
./benchmark_eq fl-plain -l 8
./benchmark_eq fl-arith -l 16 -d 14 -p -v
./benchmark_eq cw-plain -k 2 -l 32 -p
./benchmark_eq cw-arith -k 3 -w results-eq/ -p -v
```


## Experimental Results
The results shown in the paper can be reproduced using the implementation in this repository. The instructions reproduce the results are in the `src/build` directory

## Testing

The repository is tested using the [googletest](https://github.com/google/googletest) framework. For building and running tests, run the following commands
Expand All @@ -86,16 +98,4 @@ cd build
cmake .. -DCMAKE_INSTALL_PREFIX=[PATH TO SEAL]
make
./tests
```

## Examples
```
./benchmark_eq fl-plain -l 8
./benchmark_eq fl-arith -l 16 -d 14 -p -v
./benchmark_eq cw-plain -k 2 -l 32 -p
./benchmark_eq cw-arith -k 3 -w results-eq/ -p -v
```


## Experimental Results
The results shown in the paper can be reproduced using the implementation in this repository. The instructions reproduce the results are in the `src/build` directory
```
14 changes: 13 additions & 1 deletion src/build/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,16 @@ Arithmetic Equality Operators | `equality-arithmetic.sh` | Table 5 and 12 | benc
PIR with one plaintext payload | `pir-one-plaintext.sh` | Table 7 and 13 | main
PIR with large payloads | `pir-large-payload.sh` | Table 9 | main

These scripts must be run in the this directory (the `build` directory), next to the corresponding executables. The code reqiured to interpret the data and gernerate the tables is in `interpret-results.ipynb`.
These scripts must be run in the this directory (the `build` directory), next to the corresponding executables. The code required to interpret the data and generate the tables is in `interpret-results.ipynb`. By running the cells of the specified
notebook, the results for the PIR experiments are shown in separate
tables.

In our paper, we run all experiments on an Intel Xeon E5-4640 @
2.40GHz server running Ubuntu 20.04 and we parallelize over 32 physical cores when specified.

Using the machine specified above, and assuming all the scripts are run in
sequence, it can take up to two week to run, depending on the number of
repititions of the experiments. The PIR experiments are currently set to
run 10 times. This can be modified in the corresponding scripts to reduce
the waiting time.

2 changes: 1 addition & 1 deletion src/client.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ bool Client::validate_response(QueryParameters* q_params, uint64_t _query_keywor
if (__equal){
cout << "Correct Response!" << endl;
} else {
cout << "Incorrect Reponse!" << endl;
cout << "Incorrect Response!" << endl;
}
}
return __equal;
Expand Down

0 comments on commit 9e0d9f9

Please sign in to comment.