run-experiment 1.4 KB

1234567891011121314151617181920212223242526272829
  1. #!/bin/bash
  2. # Get the IP addresses
  3. p0addr=$(docker inspect --format='{{ .NetworkSettings.IPAddress }}' ramen_p0)
  4. p1addr=$(docker inspect --format='{{ .NetworkSettings.IPAddress }}' ramen_p1)
  5. p2addr=$(docker inspect --format='{{ .NetworkSettings.IPAddress }}' ramen_p2)
  6. #echo $p0addr
  7. #echo $p1addr
  8. #echo $p2addr
  9. savefile0=$$.p0.out
  10. savefile1=$$.p1.out
  11. savefile2=$$.p2.out
  12. lognitems="$1"
  13. naccess="$2"
  14. docker exec -w /root/ramen ramen_p2 bash -c "stdbuf -o 0 ./target/release/examples/bench_doram -a $naccess -i 2 -s $lognitems -l $p2addr -p 6000 -c 0:$p0addr:8000 --connect-timeout-seconds 30 > $savefile2" &
  15. docker exec -w /root/ramen ramen_p1 bash -c "stdbuf -o 0 ./target/release/examples/bench_doram -a $naccess -i 1 -s $lognitems -l $p1addr -p 7000 -c 2:$p2addr:6000 --connect-timeout-seconds 30 > $savefile1" &
  16. docker exec -w /root/ramen ramen_p0 bash -c "stdbuf -o 0 ./target/release/examples/bench_doram -a $naccess -i 0 -s $lognitems -l $p0addr -p 8000 -c 1:$p1addr:7000 --connect-timeout-seconds 30 > $savefile0" &
  17. wait
  18. echo ===== P0 output
  19. docker exec -w /root/ramen ramen_p0 cat $savefile0
  20. docker exec -w /root/ramen ramen_p0 rm -f $savefile0
  21. echo ===== P1 output
  22. docker exec -w /root/ramen ramen_p1 cat $savefile1
  23. docker exec -w /root/ramen ramen_p1 rm -f $savefile1
  24. echo ===== P2 output
  25. docker exec -w /root/ramen ramen_p2 cat $savefile2
  26. docker exec -w /root/ramen ramen_p2 rm -f $savefile2
  27. date "+===== End %s %F %T"