-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2,086 changed files
with
4,731 additions
and
271 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
#!/bin/bash | ||
|
||
# rsync -ru --progress --exclude={'res','out.txt','out.dat','err.dat'} ./tests/* [email protected]:/users/emil/sledge-server/tests/ | ||
# rsync -ru --progress --exclude={'res','out.txt','out.dat','err.dat'} ./tests/* [email protected]:/users/emil/sledge-client/tests/ | ||
|
||
# rsync -ru --progress --exclude={'thirdparty','res','err.dat','out*','*.log'} ./tests ./runtime [email protected]:/users/emil/sledge-server/ | ||
# rsync -ru --progress --exclude={'res','err.dat','out*','*.log'} ./tests [email protected]:/users/emil/sledge-client/ | ||
|
||
rsync -ru --progress --exclude={'thirdparty','res-*','err.dat','out*','*.log','input*'} ./tests ./runtime [email protected]:/users/emil/sledge-server/ | ||
rsync -ru --progress --exclude={'thirdparty','res-*','err.dat','out*','*.log','mt-juan/input-cnn','mt-emil/input-cnn'} ./tests ./runtime [email protected]:/users/emil/sledge-client/ | ||
# rsync -ru --progress --exclude={'thirdparty','res-*','err.dat','out*','*.log','mt-juan/input-cnn','mt-emil/input-cnn'} ./tests ./runtime [email protected]:/users/emil/sledge-client/ | ||
rsync -ru --progress --exclude={'thirdparty','res-*','err.dat','out*','*.log','input*'} ./tests ./runtime [email protected]:/users/emil/sledge-server/ | ||
# rsync -ru --progress --exclude={'thirdparty','res-*','err.dat','out*','*.log'} ./tests ./runtime [email protected]:/users/emil/sledge-client/ | ||
|
||
# If on a network where only 443 is allowed use this (after allowing port forwarding ssh to 443 on the server): | ||
# rsync -ru -e 'ssh -p 443' --progress --exclude={'res','out.txt','out.dat','err.dat'} ./tests/* emil@server:/users/emil/sledge-server/tests/ | ||
# rsync -ru -e 'ssh -p 443' --progress --exclude={'res','out.txt','out.dat','err.dat'} ./tests/* emil@client:/users/emil/sledge-client/tests/ | ||
|
||
|
||
# lab-dell (don't forget to provide the private key in the config file inside .ssh folder) | ||
# rsync -ru --progress --exclude={'thirdparty','res-*','err.dat','out*','*.log'} ./tests ./runtime [email protected]:/home/lab/sledge-emil/ | ||
|
||
# CMU (don't forget to provide the private key in the config file inside .ssh folder) | ||
# rsync -ru --progress --exclude={'thirdparty','res','err.dat','out*','*.log'} ./tests ./runtime [email protected]:/home/gwu/sledge/ | ||
|
||
# esma | ||
# rsync -ru --progress --exclude={'thirdparty','res-*','err.dat','out*','*.log'} ./tests [email protected]:/home/emil/sledge-client/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
#pragma once | ||
|
||
#include <stdlib.h> | ||
#include "tenant.h" | ||
#include "message.h" | ||
|
||
#define DBF_USE_LINKEDLIST | ||
// static const bool USING_AGGREGATED_GLOBAL_DBF = true; | ||
|
||
/* Returns pointer back if successful, null otherwise */ | ||
// extern void *global_dbf; | ||
extern void **global_virt_worker_dbfs; | ||
extern void *global_worker_dbf; | ||
|
||
struct demand_node { | ||
struct ps_list list; | ||
uint64_t abs_deadline; | ||
uint64_t demand; | ||
// uint64_t demand_sum; | ||
// struct sandbox_metadata *sandbox_meta; | ||
struct tenant *tenant; | ||
}; | ||
|
||
typedef enum dbf_update_mode | ||
{ | ||
DBF_CHECK_AND_ADD_DEMAND, /* normal mode for adding new sandbox demands */ | ||
DBF_FORCE_ADD_NEW_SANDBOX_DEMAND, /* work-conservation mode*/ | ||
DBF_FORCE_ADD_MANUAL_DEMAND, /* work-conservation mode*/ | ||
DBF_REDUCE_EXISTING_DEMAND, /* normal mode for reducing existing sandbox demands */ | ||
// DBF_CHECK_EXISTING_SANDBOX_EXTRA_DEMAND, /* special case when a sandbox goes over its expected exec */ | ||
DBF_DELETE_EXISTING_DEMAND /* normal mode for removing existing sandbox demand */ | ||
} dbf_update_mode_t; | ||
|
||
typedef int (*dbf_get_worker_idx_fn_t)(void *); | ||
typedef uint64_t (*dbf_get_time_of_oversupply_fn_t)(void *); | ||
typedef void (*dbf_print_fn_t)(void *, uint64_t); | ||
typedef bool (*dbf_try_update_demand_fn_t)(void *, uint64_t, uint64_t, uint64_t, uint64_t, dbf_update_mode_t, void *, struct sandbox_metadata *sandbox_meta); | ||
typedef uint64_t (*dbf_get_demand_overgone_its_supply_at_fn_t)(void *, uint64_t, uint64_t, uint64_t); | ||
typedef void (*dbf_free_fn_t)(void *); | ||
|
||
struct dbf_config { | ||
dbf_get_worker_idx_fn_t get_worker_idx_fn; | ||
// dbf_get_max_relative_dl_fn_t get_max_relative_dl_fn; | ||
dbf_get_time_of_oversupply_fn_t get_time_of_oversupply_fn; | ||
dbf_print_fn_t print_fn; | ||
// dbf_grow_fn_t grow_fn; | ||
dbf_try_update_demand_fn_t try_update_demand_fn; | ||
dbf_get_demand_overgone_its_supply_at_fn_t get_demand_overgone_its_supply_at_fn; | ||
dbf_free_fn_t free_fn; | ||
}; | ||
|
||
int dbf_get_worker_idx(void *); | ||
// uint64_t dbf_get_max_relative_dl(void *); | ||
uint64_t dbf_get_time_of_oversupply(void *); | ||
void dbf_print(void *, uint64_t); | ||
// void *dbf_grow(void *, uint64_t); | ||
bool dbf_try_update_demand(void *, uint64_t, uint64_t, uint64_t, uint64_t, dbf_update_mode_t, void *, struct sandbox_metadata *sandbox_meta); | ||
uint64_t dbf_get_demand_overgone_its_supply_at(void *, uint64_t, uint64_t, uint64_t); | ||
void dbf_free(void *); | ||
|
||
void dbf_plug_functions(struct dbf_config *config); | ||
|
||
void *dbf_list_initialize(uint32_t, uint8_t, int, struct tenant *); | ||
void *dbf_array_initialize(uint32_t, uint8_t, int, struct tenant *); | ||
void *dbf_initialize(uint32_t num_of_workers, uint8_t reservation_percentile, int worker_idx, struct tenant *tenant); | ||
|
||
|
||
bool | ||
dbf_list_try_add_new_demand(void *dbf_raw, uint64_t start_time, uint64_t abs_deadline, uint64_t adjustment, struct sandbox_metadata *sm); | ||
|
||
void | ||
dbf_list_force_add_extra_slack(void *dbf_raw, struct sandbox_metadata *sm, uint64_t adjustment); | ||
|
||
void | ||
dbf_list_reduce_demand(struct sandbox_metadata *sm, uint64_t adjustment, bool delete_node); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
#pragma once | ||
|
||
#include "global_request_scheduler.h" | ||
|
||
void global_request_scheduler_mtdbf_initialize(); |
Oops, something went wrong.