114 lines
3.7 KiB
Java
114 lines
3.7 KiB
Java
package org.gcube.dataanalysis.executor.tests;
|
|
|
|
import org.gcube.dataanalysis.ecoengine.configuration.AlgorithmConfiguration;
|
|
import org.gcube.dataanalysis.ecoengine.user.GeneratorT;
|
|
import org.gcube.dataanalysis.executor.generators.D4ScienceDistributedProcessing;
|
|
|
|
public class TestD4ScienceQueueMultipleMaps {
|
|
|
|
public static void main(String[] args) throws Exception {
|
|
String configPath = "./cfg/";
|
|
// String csquareTable = "hcaf_d";
|
|
String csquareTable[] = {"hcaf_d",
|
|
"hcaf_d_2018_LINEAR_01341919234605",
|
|
"hcaf_d_2024_LINEAR_11341919235343",
|
|
"hcaf_d_2030_LINEAR_21341919235554",
|
|
"hcaf_d_2036_LINEAR_31341919235781",
|
|
"hcaf_d_2042_LINEAR_41341919235986",
|
|
"hcaf_d_2050"
|
|
};
|
|
|
|
String years[] = {
|
|
"2012",
|
|
"2018",
|
|
"2024",
|
|
"2030",
|
|
"2036",
|
|
"2042",
|
|
"2050"
|
|
};
|
|
|
|
String preprocessedTable = "maxminlat_hspen";
|
|
String envelopeTable = "hspen_mini_10";
|
|
int numberOfResources = 1;
|
|
String userName = "gianpaolo.coro";
|
|
String generatorName = "AQUAMAPS_SUITABLE";
|
|
String scope = "/gcube";
|
|
int k = 2;
|
|
long t0= System.currentTimeMillis();
|
|
String finalDistributionTable = null;
|
|
for (int i = 0; i < k; i++) {
|
|
finalDistributionTable = "hspec_suitable_executor_" + years[i];
|
|
System.out.println("Generating hspec "+finalDistributionTable);
|
|
AlgorithmConfiguration config = GeneratorT.getGenerationConfig(numberOfResources, generatorName, envelopeTable, preprocessedTable, "", userName, csquareTable[i], finalDistributionTable, configPath);
|
|
config.setPersistencePath("./");
|
|
config.setGcubeScope(scope);
|
|
config.setParam("ServiceUserName", "gianpaolo.coro");
|
|
config.setParam("DatabaseUserName", "utente");
|
|
config.setParam("DatabasePassword", "d4science");
|
|
config.setParam("DatabaseURL", "jdbc:postgresql://dbtest.research-infrastructures.eu/aquamapsorgupdated");
|
|
config.setParam("DatabaseDriver", "org.hibernate.dialect.PostgreSQLDialect");
|
|
config.setTableSpace("tbsp_1");
|
|
Thread t = new Thread((new TestD4ScienceQueueMultipleMaps()).new ThreadGenerator(config));
|
|
t.start();
|
|
// generate(config);
|
|
}
|
|
|
|
long t1= System.currentTimeMillis();
|
|
System.out.println("OVERALL LAUNCH TIME COMPUTATION ON "+k+" REQUESTS IS "+(t1-t0));
|
|
}
|
|
|
|
|
|
public class ThreadGenerator implements Runnable {
|
|
AlgorithmConfiguration c;
|
|
|
|
public ThreadGenerator(AlgorithmConfiguration c) {
|
|
this.c = c;
|
|
}
|
|
|
|
public void run() {
|
|
try {
|
|
generate(c);
|
|
|
|
} catch (Exception e) {
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
static long globalt0=System.currentTimeMillis();
|
|
static long total=0;
|
|
public static void generate(AlgorithmConfiguration config) throws Exception {
|
|
|
|
D4ScienceDistributedProcessing generator = new D4ScienceDistributedProcessing(config);
|
|
generator.init();
|
|
|
|
if (generator != null) {
|
|
long t0 = System.currentTimeMillis();
|
|
TestGenerator tgs = new TestGenerator(generator);
|
|
Thread t = new Thread(tgs);
|
|
t.start();
|
|
while (generator.getStatus() < 100) {
|
|
|
|
String resLoad = generator.getResourceLoad();
|
|
String ress = generator.getResources();
|
|
String species = generator.getLoad();
|
|
System.out.println("LOAD : " + resLoad);
|
|
System.out.println("RESOURCES: " + ress);
|
|
System.out.println("SPECIES: " + species);
|
|
System.out.println("STATUS: " + generator.getStatus());
|
|
Thread.sleep(10000);
|
|
}
|
|
System.out.println("FINAL STATUS: " + generator.getStatus() + " ELAPSED " + (System.currentTimeMillis() - t0));
|
|
|
|
} else
|
|
System.out.println("Generator Algorithm Not Supported");
|
|
|
|
total = System.currentTimeMillis()-globalt0;
|
|
System.err.println("TOTAL TIME: " + total);
|
|
|
|
// generator.generate();
|
|
// }
|
|
}
|
|
}
|