[Swift-devel] several questions about coaster

Zhao Zhang zhaozhang at uchicago.edu
Tue Apr 28 00:46:38 CDT 2009


Hi, Mihael

As I am going to test coaster deeply on various systems. I got several 
questions regarding to the coaster infrastructure.
1. Scalability
    From source code, I could tell that coaster is using TCP for task 
transmission.(correct me if I am wrong) What is the largest
    scale test we have done with coaster? I mean the ratio between 
coaster dispatcher and the number of workers.

2. Usability
    All tests I have tried with coaster were running together with 
swift. That is a black box test for me. Is there any interface in coaster
    that I could specify the number of workers and the wall time?

    Also, is there a way for me to start coaster service and workers 
separately and independently?

    Besides, I am guessing coaster is using a dynamic provisioning 
approach to request resources, is this correct? Which means coaster
    will decide how many compute nodes to request according to the 
number of jobs, and the length of jobs. If I run coaster in a super computer
    context, can I ask coaster to hold a certain number of compute nodes 
for a certain amount of time? (This somehow overlaps the first Q in 
section 2)

3. Performance
    Does coaster provide alternative interface other than the coaster 
provider? Say if I want to test the dispatch rate of coaster, but don't 
want to
    introduce swift overhead, which is a good way to start coaster?

    Is there a coaster log that could show the number of active workers 
currently registered with the coaster service, how many jobs are running,
    how many jobs returned successful, and etc.?

4. Dispatch Algorithm
    Does coaster use a scoring algorithm for dispatching jobs? Which 
means coaster service keeps scores for every workers, and dispatch jobs
    based on those scores? Is there an alternative way, say FIFO algorithm?

5. Reliability
    I know that if a job failed, swift could resend the same job. But 
does coaster have any error recovery mechanism built in?

So far so many questions, thanks for you patience. I will have more as 
going on with the testing. :-)

best wishes
zhao



More information about the Swift-devel mailing list