[RFC] Allow specifying wload objects directly in the executor's experiments_conf
Created by: bjackman
This is basically to allow you to use the Executor without having to use the dictionary grammar to specify the synthetic workloads you want to use.
That basically means instead of:
experiments_conf = {
'confs': [{
'tag': "my_conf"
}],
"wloads" : {
"my_wload" : {
"type" : "rt-app",
"conf" : {
"class" : "profile",
"params" : {
"my_task" : {
"kind" : "Periodic",
"params" : {
<task params>
},
},
},
},
},
},
}
You can have something like:
wload = RTA(target, "my_wload")
wload.conf('profile', {'my_task': Periodic(<task params>).get()})
experiments_conf = {
'confs': [{
'tag': "my_conf",
}],
"wloads" : {
"my_wload" : wload
}
}
I've marked this "RFC" because a) I haven't done documentation and b) The API is still a bit awkward. For example note that you "name" the workload twice (i.e. the string "my_wload" appears twice in my example). I think the ideal usage would be like this:
experiments_conf = {
'confs': [{
'tag': conf_name
}],
"wloads" : [
RTA(target, wl_name, profile={'mytask': Periodic()})
]
}
But there's quite a few more changes needed to achieve that.