Master master = new Master(conf.getM(), conf.getR(), splitter);
// split input file
- System.printString("Split\n");
+ //System.printString("Split\n");
master.split();
// do 'map'
- System.printString("Map\n");
+ //System.printString("Map\n");
MapWorker[] mworkers = master.assignMap();
for(int i = 0; i < mworkers.length; ++i) {
MapWorker mworker = mworkers[i];
}
// register intermediate output from map workers to master
- System.printString("Mapoutput\n");
+ //System.printString("Mapoutput\n");
for(int i = 0; i < mworkers.length; ++i) {
for(int j = 0; j < conf.getR(); ++j) {
String temp = mworkers[i].outputFile(j);
//assert(master.isMapFinish());
// do 'reduce'
- System.printString("Reduce\n");
+ //System.printString("Reduce\n");
ReduceWorker[] rworkers = master.assignReduce();
for(int i = 0; i < rworkers.length; ++i) {
ReduceWorker rworker = rworkers[i];
}
// merge all the intermediate output from reduce workers to master
- System.printString("Merge\n");
+ //System.printString("Merge\n");
for(int i = 0; i < rworkers.length; ++i) {
master.collectROutput(rworkers[i].getOutputFile());
master.setReduceFinish(rworkers[i].getID());
//Split the input file into M pieces
task split(Master master{split}) {
- System.printString("Top of task split\n");
+ //System.printString("Top of task split\n");
master.split();
taskexit(master{!split, assignMap});
//Select a map worker to handle one of the pieces of input file
task assignMap(Master master{assignMap}) {
- System.printString("Top of task assignMap\n");
+ //System.printString("Top of task assignMap\n");
master.assignMap();
taskexit(master{!assignMap, mapoutput});
//MapWorker do 'map' function on a input file piece
task map(MapWorker mworker{map}) {
- System.printString("Top of task map\n");
+ //System.printString("Top of task map\n");
mworker.map();
taskexit(mworker{!map, partition});
//Partition the intermediate key/value pair generated
//into R intermediate local files
task partition(MapWorker mworker{partition}) {
- System.printString("Top of task partition\n");
+ //System.printString("Top of task partition\n");
mworker.partition();
taskexit(mworker{!partition, mapoutput});
//Register the intermediate ouput from map worker to master
task mapOutput(Master master{mapoutput}, /*optional*/ MapWorker mworker{mapoutput}) {
- System.printString("Top of task mapOutput\n");
+ //System.printString("Top of task mapOutput\n");
//if(isavailable(mworker)) {
int total = master.getR();
for(int i = 0; i < total; ++i) {
//Assign the list of intermediate output associated to one key to
//a reduce worker
task assignReduce(Master master{assignReduce}) {
- System.printString("Top of task assignReduce\n");
+ //System.printString("Top of task assignReduce\n");
master.assignReduce();
taskexit(master{!assignReduce, reduceoutput});
//First do sort and group on the intermediate key/value pairs assigned
//to reduce worker
task sortgroup(ReduceWorker rworker{sortgroup}) {
- System.printString("Top of task sortgroup\n");
+ //System.printString("Top of task sortgroup\n");
rworker.sortgroup();
taskexit(rworker{!sortgroup, reduce});
//Do 'reduce' function
task reduce(ReduceWorker rworker{reduce}) {
- System.printString("Top of task reduce\n");
+ //System.printString("Top of task reduce\n");
rworker.reduce();
taskexit(rworker{!reduce, reduceoutput});
//Collect the output into master
task reduceOutput(Master master{reduceoutput}, /*optional*/ ReduceWorker rworker{reduceoutput}) {
- System.printString("Top of task reduceOutput\n");
+ //System.printString("Top of task reduceOutput\n");
//if(isavailable(rworker)) {
master.collectROutput(rworker.getOutputFile());
master.setReduceFinish(rworker.getID());
}
task output(Master master{output}) {
- System.printString("Top of task output\n");
+ //System.printString("Top of task output\n");
if(master.isPartial()) {
System.printString("Partial! The result may not be right due to some failure!\n");
}
//Split the input file into M pieces
task split(Master master{split}) {
- System.printString("Top of task split\n");
+ //System.printString("Top of task split\n");
master.split();
taskexit(master{!split, assignMap});
//Select a map worker to handle one of the pieces of input file
task assignMap(Master master{assignMap}) {
- System.printString("Top of task assignMap\n");
+ //System.printString("Top of task assignMap\n");
master.assignMap();
taskexit(master{!assignMap, mapoutput});
//MapWorker do 'map' function on a input file piece
task map(MapWorker mworker{map}) {
- System.printString("Top of task map\n");
+ //System.printString("Top of task map\n");
mworker.map();
taskexit(mworker{!map, partition});
//Partition the intermediate key/value pair generated
//into R intermediate local files
task partition(MapWorker mworker{partition}) {
- System.printString("Top of task partition\n");
+ //System.printString("Top of task partition\n");
mworker.partition();
taskexit(mworker{!partition, mapoutput});
//Register the intermediate ouput from map worker to master
task mapOutput(Master master{mapoutput}, optional MapWorker mworker{mapoutput}) {
- System.printString("Top of task mapOutput\n");
+ //System.printString("Top of task mapOutput\n");
if(isavailable(mworker)) {
int total = master.getR();
for(int i = 0; i < total; ++i) {
//Assign the list of intermediate output associated to one key to
//a reduce worker
task assignReduce(Master master{assignReduce}) {
- System.printString("Top of task assignReduce\n");
+ //System.printString("Top of task assignReduce\n");
master.assignReduce();
taskexit(master{!assignReduce, reduceoutput});
//First do sort and group on the intermediate key/value pairs assigned
//to reduce worker
task sortgroup(ReduceWorker rworker{sortgroup}) {
- System.printString("Top of task sortgroup\n");
+ //System.printString("Top of task sortgroup\n");
rworker.sortgroup();
taskexit(rworker{!sortgroup, reduce});
//Do 'reduce' function
task reduce(ReduceWorker rworker{reduce}) {
- System.printString("Top of task reduce\n");
+ //System.printString("Top of task reduce\n");
rworker.reduce();
taskexit(rworker{!reduce, reduceoutput});
//Collect the output into master
task reduceOutput(Master master{reduceoutput}, optional ReduceWorker rworker{reduceoutput}) {
- System.printString("Top of task reduceOutput\n");
+ //System.printString("Top of task reduceOutput\n");
if(isavailable(rworker)) {
master.collectROutput(rworker.getOutputFile());
master.setReduceFinish(rworker.getID());
}
task output(Master master{output}) {
- System.printString("Top of task output\n");
+ //System.printString("Top of task output\n");
if(master.isPartial()) {
System.printString("Partial! The result may not be right due to some failure!\n");
}
task startup(StartupObject s{initialstate}) {
// read in configuration parameters
- System.printString("Top of task startup\n");
+ //System.printString("Top of task startup\n");
String path = new String("/home/jzhou/pert/conf.txt");
FileInputStream iStream = new FileInputStream(path);
byte[] b = new byte[1024];
}
task sampling(Stage s{sampling}) {
- System.printString("Top of task sampling\n");
+ //System.printString("Top of task sampling\n");
s.sampling();
}
task estimateStage(Stage s{estimate}) {
- System.printString("Top of task estimateStage\n");
+ //System.printString("Top of task estimateStage\n");
s.estimate();
}
task estimate(Estimator e{estimate}, optional Stage s{merge}) {
- System.printString("Top of task estimate\n");
+ //System.printString("Top of task estimate\n");
boolean fake = false;
if(!isavailable(s)) {
}
task prob(Estimator e{prob}) {
- System.printString("Top of task prob\n");
+ //System.printString("Top of task prob\n");
if(e.isPartial()) {
System.printString("There are some sampling data unavailable. The anticipate probability may be greater than it should be!\n");
task Startup( StartupObject s{ initialstate } )
{
- System.printString("Top of task Startup\n");
+ //System.printString("Top of task Startup\n");
SubProblem top = new SubProblem(){ findingNewFits, main };
/*
counter.partial = true;
taskexit( sp{ !findingNewFits } );
}
- System.printString("Top of task findNewFits\n");
+ //System.printString("Top of task findNewFits\n");
// if we have run out of iterations of the
// findNewFits task, mark waitingForSubProblems
if( sp.indexToFit == sp.tilesToFit.length )
}
task scoreSubProbleam(SubProblem sp{ !scored && leaf }) {
- System.printString("Top of task scoreSubProblem\n");
+ //System.printString("Top of task scoreSubProblem\n");
sp.scoreWorkingGrid();
taskexit(sp { scored });
}
//check the highest score
task findHighestScore(SubProblem pSp{ !scored && main }, optional SubProblem cSp{ scored && leaf }, GlobalCounter counter{ Init } ) {
- System.printString("Top of task findHighestScore\n");
+ //System.printString("Top of task findHighestScore\n");
--counter.counter;
//System.printString( "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n" );
//System.printString( "find highest score:\n" + counter.counter + "\n" );
}
task printHighestScore(SubProblem sp{ scored && main }) {
- System.printString("Top of task printHighestScore\n");
+ //System.printString("Top of task printHighestScore\n");
// if(isavailable(sp)) {
if(sp.partial == true) {
System.printString ( "Result may not be the best one due to some failure during execution!\n" );