Project Structure¶
The directory structure of the project MUST conform with the following:
Jupiter/
├── jupiter_config.py
├── jupiter_config.ini
├── k8_requirements.txt
├── LICENSE.txt
├── nodes.txt
├── ...
├── docs
├── circe
│ ├── original
| │ ├── home_node.Dockerfile
| │ ├── circe_docker_files_generator.py
| │ ├── monitor.py
| │ ├── readconfig.py
| │ ├── requirements.txt
| │ ├── evaluate.py
| │ ├── runtime_profiler_mongodb
| │ ├── scheduler.py
| │ ├── start_home.sh
| │ ├── start_worker.sh
| │ └── worker_node.Dockerfile
│ ├── pricing_event
| │ ├── home_node.Dockerfile
| │ ├── circe_docker_files_generator.py
| │ ├── monitor.py
| │ ├── readconfig.py
| │ ├── requirements.txt
| │ ├── evaluate.py
| │ ├── runtime_profiler_mongodb
| │ ├── scheduler.py
| │ ├── compute.py
| │ ├── start_home.sh
| │ ├── start_computing_worker.sh
| │ ├── start_controller_worker.sh
| │ ├── controller_worker_node.Dockerfile
| │ └── computing_worker_node.Dockerfile
│ ├── pricing_push
├── task_mapper
│ |
| heft_mulhome
| |__original
| | ├── heft.Dockerfile
| | ├── heft_dockerfile_generator.py
| | ├── heft_dup.py
| | ├── master_heft.py
| | ├── read_input_heft.py
| | ├── requirements.txt
| | ├── start.sh
| | ├── write_input_heft.py
| |__modified
| | ├── heft.Dockerfile
| | ├── heft_dockerfile_generator.py
| | ├── heft_dup.py
| | ├── master_heft.py
| | ├── read_input_heft.py
| | ├── requirements.txt
| | ├── start.sh
| | ├── write_input_heft.py
└── wave_mulhome
│ ├── random_wave
| | ├── home
| | │ ├── requirements.txt
| | │ ├── master_random.py
| | │ └── start.sh
| | └── worker
| | | ├── child_appointment_random.py
| | | ├── requirements.txt
| | | └── start.sh
| | |__ home.Dockerfile
| | |__ worker.Dockerfile
| | |__ wave_docker_files_generator.py
│ ├── greedy_wave
| | ├── home
| | │ ├── requirements.txt
| | │ ├── master_greedy.py
| | │ └── start.sh
| | └── worker
| | | ├── child_appointment_greedy.py
| | | ├── requirements.txt
| | | └── start.sh
| | |__ home.Dockerfile
| | |__ worker.Dockerfile
| | |__ wave_docker_files_generator.py
├── profilers
│ ├── network_resource_profiler_mulhome
│ | |___home
│ | | |
| │ │ ├── central_input
| │ │ │ ├── link_list.txt
| │ │ │ └── nodes.txt
| │ │ ├── central_mongod
| │ │ ├── central_query_statistics.py
| │ │ ├── central_scheduler.py
| │ │ ├── generate_link_list.py
| │ │ ├── requirements.txt
| │ │ ├── resource_profiling_files
| │ │ │ ├── insert_to_container.py
| │ │ │ ├── ip_path
| │ │ │ ├── job.py
| │ │ │ └── read_info.py
| │ │ └── start.sh
│ |___|___worker
| | | |
│ | | ├── automate_droplet.py
│ | | ├── droplet_generate_random_files
│ | | ├── droplet_mongod
│ | | ├── droplet_scp_time_transfer
│ | | ├── requirements.txt
│ | | ├── resource_profiler.py
│ | | └── start.sh
| | |___profiler_docker_files_generator.py
| | |___profiler_home.Dockerfile
| | |___profiler_worker.Dockerfile
│ ├── execution_profiler_mulhome
│ | |___exec_docker_files_generator.py
│ | |___exec_home.Dockerfile
│ | |___exec_worker.Dockerfile
│ | |___get_files.py
│ | |___profiler_home.py
│ | |___profiler_worker.py
│ | |___requirements.txt
│ | |___start_home.sh
│ | |___start_worker.sh
├── task_specific_files
│ └── APP_Folder
│ ├── configuration.txt
│ ├── app_config.ini
│ ├── name_convert.txt
│ ├── sample_input
│ │ ├── sample1
│ │ └── sample2
│ └── scripts
│ ├── task1.py
│ └── task2.py
|
└── mulhome_scripts
├── auto_deploy_system.py
├── auto_teardown_system.py
├── build_push_circe.py
├── build_push_pricing_circe.py
├── build_push_jupiter.py
├── build_push_profiler.py
├── build_push_wave.py
├── build_push_heft.py
├── build_push_exec.py
├── delete_all_circe.py
├── delete_all_pricing_circe.py
├── delete_all_profilers.py
├── delete_all_waves.py
├── delete_all_heft.py
├── delete_all_exec.py
├── k8s_circe_scheduler.py
├── k8s_pricing_circe_scheduler.py
├── k8s_heft_scheduler.py
├── k8s_exec_scheduler.py
├── k8s_profiler_scheduler.py
├── k8s_wave_scheduler.py
├── static_assignment.py
├── utilities.py
├── keep_alive.py
├── write_circe_service_specs.py
├── write_circe_specs.py
├── write_pricing_circe_service_specs.py
├── write_pricing_circe_specs.py
├── write_profiler_service_specs.py
├── write_profiler_specs.py
├── write_wave_service_specs.py
├── write_wave_specs.py
├── write_heft_service_specs.py
├── write_heft_specs.py
├── write_wave_service_specs.py
└── write_wave_specs.py