AlexBolot / PS5-Youtube

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Google HashCode Project, TeamB

Summary

  1. About the project
    1. The goal
  2. The modules
    1. Benchmark
    2. Engine
    3. Visualizer
  3. Coming soon
  4. Libraries
  5. Author

1 - About the project

1.1 - The goal

The goal of this project is to solve 2017's Google HashCode challenge, offering at least 7 strategies.
The HashCode challenge was about solving cache and datacenter allocation, to offer the shortest delay to the EndPoints when watching videos.

2 - The modules

2.1 - Benchmark

To start the Benchmark of the solution, simply use this command line :

cd teamB/benchmark
mvn clean install
java -jar target/benchmarks.jar -rf json

But beware : don't plan to do anything else, it might take up to 100% of your CPU capacity for a few minutes.

2.2 - Engine

To start the Engine, use these commands :

cd teamB/engine
mvn exec:java
  -Dexec.mainClass="fr.uca.unice.polytech.si3.ps5.year17.teamX.engine.Main" \
  -Dexec.args="NUM_ID_STRAT \
      full/path/to/source/file/data.in \
      full/path/to/result/file/data.out \
      full/path/to/result/file/score.out"

Note : NUM_ID_STRAT has to be replaces by the number of the strategy you want to use.
If none match your argument, the best one will be selected.

2.3 - Visualizer

To start using the Visualizer you need to use the following commands :

cd teamB/visualiser
mvn exec:java \
  -Dexec.mainClass="fr.uca.unice.polytech.si3.ps5.year17.teamX.visualiser.Main" \
  -Dexec.args="full/path/to/source/file/data.in \
    full/path/to/result/file1/data.out;full/path/to/result/file2/data.out \
    full/path/to/result/file1/score.out;full/path/to/result/file2/score.out \
    full/path/to/benchmark/file/result.json\
    full/path/to/result/folder"

You will need those packages :

  • shiny
  • shinydashboard
  • ggplot2

To execute visu.r, run this on the R console : shiny::runApp()

3 - Coming soon

Nothing, this project was a one week challenge and the client will not ask for maintenance nor for more features.

4 - Libraries used

  • Java8 : JDK 1.8
  • Maven : JUnit 5
  • R language : R, shiny, shinydashboard, ggplot2

5 - Authors

Team Collet wa mou Mosseiru :

  • Younes Abdennadher
  • Hugo François
  • Alexandre Bolot
  • Camille Le Roux

About


Languages

Language:Java 100.0%