[Haizea] Developer Docs...
Borja Sotomayor
borja at borjanet.com
Tue Dec 16 20:22:32 CST 2008
Hi,
> Firstly, One of the files I want to change is the sample_trace.conf i.e.
> I want to have resources with different capabilities. Currently, all the
> nodes are assumed to have the same characteristics e.g. CPU,Mem etc. using
> the "resources" option in the sample_trace.conf( please correct me if I am
> wrong). However, I want to add an extra characteristic e.g. availability
> of "MRI device" with the resources and for this, I assume that not all the
> resources will have such device. I tried to have multiple "resources"
> options but, of course, that does not seem to work. Could you please
> suggest something in this regard...
Adding new resource "dimensions" is not too hard, and can be done simply
by modifying the "resources" option of the [simulation] section.
However, I'm assuming what you need is to create a simulated resource
pool with heterogeneous resources (some having an MRI device and others
not, the same way some nodes could have X memory and others Y memory).
This is currently not supported, as nodes are assumed to be homogeneous
(actually, the underlying code supports having heterogeneous nodes;
there is just currently no way of specifying this in the configuration
file).
This will eventually get added to Haizea, but is not something that has
a high priority for me right now. If you are interested in implementing
this feature, I can point you to the parts of the code that would have
to be modified.
> Secondly, I believe the "changepoints" logic for the Best Effort leases
> comes into play with "suspension" being true and/or the resource is
> migrated/resumed. Please correct me if I am wrong again...
"changepoints" are used in several parts of the scheduling code, and
represent points in the slottable where there is a change in resource
usage (e.g., because a lease ends). So, they are relevant to a number of
scheduling tasks, including deciding when a lease would have to be
suspended (at the changepoint where resource availability drops below
the point where it can meet the resource requirements of the lease).
> Finally, can anyone please suggest ways to analyze the output of the
> simulation.
In the current version of Haizea, all simulation data is saved to a
datafile that has to be analysed programmatically. However, I recently
wrote a simple command that takes a datafile (or a collection of
datafiles) and converts them to a more usable format (currently, only
CSV is supported; in my case, I pipe that CSV to an R script that
produces graphs based on the data). I've commited it to SVN, in case you
want to use the command, or at least look at it to better understand how
the datafile can be processed. The command is called
"haizea-convert-data". You can see the code here:
https://phoenixforge.cs.uchicago.edu/haizea/browser/trunk/bin?file=haizea-convert-data
and in class "haizea_convert_data" at the end of this file:
https://phoenixforge.cs.uchicago.edu/haizea/browser/trunk/src/haizea/cli?file=commands.py
If you want to use the command, I wouldn't recommend checking out all of
Haizea, since there have been some interface changes elsewhere in the
code that may break work you've already done. Instead, I suggest you
check out the two files above (and use them to replace the same files in
your current Haizea installation)
The command is used like this:
haizea-convert-data -t <type> -f <format> <datafile(s)>
<type> is either "per-experiment" or "per-lease". When using
"per-experiment", the command will produce a CSV file with one line per
datafile (i.e., one run of the simulator), and will include aggregated
information (currently, just the time required to run all the best
effort leases). When using "per-lease", then there will be one line per
lease with information such as the waiting time of the lease and its
slowdown.
The only <format> supported right now is "csv".
Anyway, I hope this help. The next release of Haizea will include this
command and documentation on how to use it.
Cheers!
--
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Borja Sotomayor, University of Chicago
Ph.D. Candidate, Department of Computer Science
Ryerson 257-C, 1100 East 58th Street, Chicago, IL
http://people.cs.uchicago.edu/~borja/
Haizea: http://haizea.cs.uchicago.edu/
·····························································
"Dis maschine vill run und run!"
-- Kurt Gödel (on the Turing Machine)
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
More information about the Haizea
mailing list