debug schedule task
This commit is contained in:
@@ -5,8 +5,8 @@ import os.Shellable
|
|||||||
|
|
||||||
class CommandGroup(name: String) extends BaseGroup {
|
class CommandGroup(name: String) extends BaseGroup {
|
||||||
override def getToolParameters: Seq[Shellable] = {
|
override def getToolParameters: Seq[Shellable] = {
|
||||||
val sub = options.toSeq.flatMap(_.getToolParameters)
|
val sub = options.toSeq.map(_.getToolParameters)
|
||||||
Seq(s"""$name="${sub.mkString(" ")}"""")
|
Seq(s"""--$name="${sub.flatMap(_.value).mkString(" ")}"""")
|
||||||
}
|
}
|
||||||
|
|
||||||
override def init(scallopConf: ScallopConf, group: ScallopOptionGroup): Unit = {
|
override def init(scallopConf: ScallopConf, group: ScallopOptionGroup): Unit = {
|
||||||
|
@@ -7,6 +7,8 @@ trait Task {
|
|||||||
def execute(): Unit
|
def execute(): Unit
|
||||||
|
|
||||||
def runExecutable(execPath: Path, args: Shellable*): os.CommandResult = {
|
def runExecutable(execPath: Path, args: Shellable*): os.CommandResult = {
|
||||||
|
println(s"Executing $execPath with")
|
||||||
|
println(args.flatMap(_.value).mkString(" "))
|
||||||
os.proc(execPath, args).call()
|
os.proc(execPath, args).call()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -30,8 +30,6 @@ class LongnailScheduleTask(isaxMLIR: Path, coreDatasheet: Path, params: Scheduli
|
|||||||
)*/
|
)*/
|
||||||
runExecutable(EXECUTABLE,
|
runExecutable(EXECUTABLE,
|
||||||
"--lower-coredsl-to-lil",
|
"--lower-coredsl-to-lil",
|
||||||
"--schedule-lil",
|
|
||||||
"--datasheet", coreDatasheet,
|
|
||||||
params.getToolParameters,
|
params.getToolParameters,
|
||||||
isaxMLIR
|
isaxMLIR
|
||||||
)
|
)
|
||||||
|
@@ -7,16 +7,19 @@ import org.rogach.scallop.*
|
|||||||
class SchedulingParameters extends OptionGroup {
|
class SchedulingParameters extends OptionGroup {
|
||||||
override def name: String = "Longnail Scheduling Args"
|
override def name: String = "Longnail Scheduling Args"
|
||||||
|
|
||||||
|
add(new CommandGroup("prepare-schedule-lil") {
|
||||||
|
choiceS(Seq("LEGACY", "MS", "PAMS", "PARAMS", "MI_MS", "MI_PAMS", "MI_PARAMS"), name = "schedulingAlgo", default = Some("LEGACY"))
|
||||||
|
value[Path](cliName = "cellLibrary", toolName = "library")
|
||||||
|
valueS[Path](name = "opTyLibrary")
|
||||||
|
})
|
||||||
|
|
||||||
add(new CommandGroup("schedule-lil") {
|
add(new CommandGroup("schedule-lil") {
|
||||||
valueS[Int](name = "schedulingTimeout")
|
valueS[Int](name = "schedulingTimeout")
|
||||||
value[Int](cliName = "schedulingRefineTimeout", toolName = "schedRefineTimeout")
|
value[Int](cliName = "schedulingRefineTimeout", toolName = "schedRefineTimeout")
|
||||||
value[Path](cliName = "schedulingKconf", toolName = "solSelKconfPath")
|
value[Path](cliName = "schedulingKconf", toolName = "solSelKconfPath")
|
||||||
choiceS(Seq("LEGACY", "MS", "PAMS", "PARAMS", "MI_MS", "MI_PAMS", "MI_PARAMS"), name = "schedulingAlgo", default = Some("LEGACY"))
|
|
||||||
choice(Seq("CBC", "GLPK", "SCIP", "HIGHS", "GUROBI", "CPLEX", "XPRESS", "COPT"), cliName = "ilpSolver", toolName = "solver", default = Some("CBC"))
|
choice(Seq("CBC", "GLPK", "SCIP", "HIGHS", "GUROBI", "CPLEX", "XPRESS", "COPT"), cliName = "ilpSolver", toolName = "solver", default = Some("CBC"))
|
||||||
toggle(cliName = "verboseSched", toolName = "verbose")
|
toggle(cliName = "verboseSched", toolName = "verbose")
|
||||||
valueS[Path](name = "opTyLibrary")
|
|
||||||
value[Int](cliName = "clockPeriod", toolName = "clockTime")
|
value[Int](cliName = "clockPeriod", toolName = "clockTime")
|
||||||
value[Path](cliName = "cellLibrary", toolName = "library")
|
|
||||||
})
|
})
|
||||||
|
|
||||||
value[Int](cliName = "maxLoopUnrollFactor", toolName = "max-unroll-factor")
|
value[Int](cliName = "maxLoopUnrollFactor", toolName = "max-unroll-factor")
|
||||||
|
Reference in New Issue
Block a user