import java.io.FileNotFoundException;\r
import java.io.IOException;\r
import java.io.InputStream;\r
+import java.security.InvalidParameterException;\r
import java.util.Arrays;\r
import java.util.List;\r
\r
*/\r
public class Jronn extends SkeletalExecutable<Jronn> {\r
\r
+ \r
private static Logger log = Logger.getLogger(Jronn.class);\r
\r
+ /**\r
+ * Number of cores to use, defaults to 1 for local execution or the value of\r
+ * "jronn.cluster.cpunum" property for cluster execution\r
+ */\r
+ private int ncoreNumber = 0;\r
+\r
+ private String ncorePrm = "-n";\r
+\r
+ \r
// Cache for Limits information\r
private static LimitsManager<Jronn> limits;\r
\r
public static final String STAT_FILE = "stat.txt";\r
\r
public Jronn() {\r
- addParameters(Arrays.asList("-jar", getLibPath(), "-n=1", "-s="\r
+ addParameters(Arrays.asList("-jar", getLibPath(), "-s="\r
+ STAT_FILE, "-f=H"));\r
}\r
\r
public static String getStatFile() {\r
return STAT_FILE;\r
}\r
+ \r
+ public void setNCore(int ncoreNumber) {\r
+ if (ncoreNumber < 1 || ncoreNumber > 100) {\r
+ throw new IndexOutOfBoundsException(\r
+ "Number of cores must be within 1 and 100 ");\r
+ }\r
+ this.ncoreNumber = ncoreNumber;\r
+ cbuilder.setParam(ncorePrm, Integer.toString(getNCore()));\r
+ }\r
+\r
+ int getNCore() {\r
+ return ncoreNumber;\r
+ }\r
+ \r
+ \r
}\r