proceedingsXMLFile.write(proceedingsXMLWriter.createXMLFromProceedings(proceedings).toprettyxml()) proceedingsHTMLFile.write(proceedingsHTMLWriter.createHTMLFromProceedings(proceedings)) rtXMLFile.write(rttoXMLWriter.createXMLFromResultedTimings(rt).toprettyxml()) rtHTMLFile.write(rttoHTMLWriter.createHTMLFromResultedTimings(rt)) proceedingsXMLFile.close() proceedingsHTMLFile.close() rtXMLFile.close() rtHTMLFile.close() update() rfBuilder = ResultingFileFromOutputBuilder() availProc = runTaskOpts.getMaxJobs() runningDict = {} while proceedings.getWAITING() != [] or proceedings.getRUNNING() != []: while (proceedings.getWAITING() !=[]) and (availProc >0): availProc -= 1 curCalc = rt.getWAITING()[0] rt.setRUNNING(curCalc) update() pid = os.fork() if (pid == 0): #Process, which starts the computeralgebra system (Child) if (runTaskOpts.getMaxCPU() != None): resource.setrlimit(resource.RLIMIT_CPU,(runTaskOpts.getMaxCPU(),runTaskOpts.getMaxCPU())) if (runTaskOpts.getMaxMem() != None): resource.setrlimit(resource.RLIMIT_DATA,(runTaskOpts.getMaxMem(),runTaskOpts.getMaxMem())) filename = os.path.join(tfPath,"casSources",curCalc[0],curCalc[1],"executablefile.sdc") result = commands.getoutput(ms.getTimeCommand()+ " -p "+ms.getCASCommand(curCalc[1])+"< "+filename) file = open(os.path.join(resultsFolder,"resultFiles",curCalc[0],curCalc[1],"outputFile.res"),"w") file.write(result)
rtXMLFile = open(os.path.join(resultsFolder,"resultedTimings.xml"),"w") rtHTMLFile = open(os.path.join(resultsFolder,"resultedTimings.html"),"w") proceedingsXMLFile.write(proceedingsXMLWriter.createXMLFromProceedings(proceedings).toprettyxml()) proceedingsHTMLFile.write(proceedingsHTMLWriter.createHTMLFromProceedings(proceedings)) rtXMLFile.write(rttoXMLWriter.createXMLFromResultedTimings(rt).toprettyxml()) rtHTMLFile.write(rttoHTMLWriter.createHTMLFromResultedTimings(rt)) proceedingsXMLFile.close() proceedingsHTMLFile.close() rtXMLFile.close() rtHTMLFile.close() update() rfBuilder = ResultingFileFromOutputBuilder() while proceedings.getWAITING() != []: curCalc = rt.getWAITING()[0] rt.setRUNNING(curCalc) update() pid = os.fork() if (pid == 0): #Process, which starts the computeralgebra system (Child) if (maxCPU != None): resource.setrlimit(resource.RLIMIT_CPU,(maxCPU,maxCPU)) if (maxMem != None): resource.setrlimit(resource.RLIMIT_DATA,(maxMem,maxMem)) filename = os.path.join(tfPath,"casSources",curCalc[0],curCalc[1],"executablefile.sdc") result = commands.getoutput(ms.getTimeCommand()+ " -p "+ms.getCASCommand(curCalc[1])+"< "+filename) file = open(os.path.join(resultsFolder,"resultFiles",curCalc[0],curCalc[1],"outputFile.res"),"w") file.write(result) file.close() os._exit(0)
proceedingsHTMLFile.write( proceedingsHTMLWriter.createHTMLFromProceedings(proceedings)) rtXMLFile.write( rttoXMLWriter.createXMLFromResultedTimings(rt).toprettyxml()) rtHTMLFile.write(rttoHTMLWriter.createHTMLFromResultedTimings(rt)) proceedingsXMLFile.close() proceedingsHTMLFile.close() rtXMLFile.close() rtHTMLFile.close() update() rfBuilder = ResultingFileFromOutputBuilder() while proceedings.getWAITING() != []: curCalc = rt.getWAITING()[0] rt.setRUNNING(curCalc) update() pid = os.fork() if (pid == 0): #Process, which starts the computeralgebra system (Child) if (maxCPU != None): resource.setrlimit(resource.RLIMIT_CPU, (maxCPU, maxCPU)) if (maxMem != None): resource.setrlimit(resource.RLIMIT_DATA, (maxMem, maxMem)) filename = os.path.join(tfPath, "casSources", curCalc[0], curCalc[1], "executablefile.sdc") result = commands.getoutput(ms.getTimeCommand() + " -p " + ms.getCASCommand(curCalc[1]) + "< " + filename) file = open(
rtXMLFile.write(rttoXMLWriter.createXMLFromResultedTimings(rt).toprettyxml()) rtHTMLFile.write(rttoHTMLWriter.createHTMLFromResultedTimings(rt)) resultsHTMLFile.write(resultsToHTMLWriter.createHTMLFromResultFiles(resultsFolder, t.getComputerAlgebraSystems())) proceedingsXMLFile.close() proceedingsHTMLFile.close() resultsHTMLFile.close() rtXMLFile.close() rtHTMLFile.close() update() rfBuilder = ResultingFileFromOutputBuilder() availProc = runTaskOpts.getMaxJobs() runningDict = {} while proceedings.getWAITING() != [] or proceedings.getRUNNING() != []: while (proceedings.getWAITING() !=[]) and (availProc >0): availProc -= 1 curCalc = rt.getWAITING()[0] rt.setRUNNING(curCalc) update() pid = os.fork() if (pid == 0): #Process, which starts the computeralgebra system (Child) if (runTaskOpts.getMaxCPU() != None): resource.setrlimit(resource.RLIMIT_CPU,(runTaskOpts.getMaxCPU(),runTaskOpts.getMaxCPU())) if (runTaskOpts.getMaxMem() != None): resource.setrlimit(resource.RLIMIT_DATA,(runTaskOpts.getMaxMem(),runTaskOpts.getMaxMem())) inputfile = open(os.path.join(tfPath,"casSources",curCalc[0],curCalc[1],"executablefile.sdc")) result = subprocess.Popen([ms.getTimeCommand(), "--format=real %e\nuser %U\nsys %S\nmax_rss_kbytes %M", ms.getCASCommand(curCalc[1])], stdout=subprocess.PIPE, stderr=subprocess.STDOUT, stdin=inputfile).communicate()[0] inputfile.close()