Hello,
I have been working and re-working the method I use to generate and submit runs on my HPC and I’d appreciate any advice or comments on the process (I’m sure there is plenty of room for improvement). Apologies if any of this seems unnecessarily complicated. This is just me fumbling my way through it.
Right now I use ArgParse.jl. I have a parser that basically looks like the following. I use keyword arguments because it makes it easier to enter the commands (since there are so many, otherwise I’d get confused)
function parse_my_commandline()
s = ArgParseSettings()
@add_arg_table s begin
"--parm1"
arg_type = String
"--parm2"
arg_type = String
"--parm3"
arg_type = Float64
"--parm4"
arg_type = Float64
"--parm5"
arg_type = Int
# ... And so on to ~30 total
end
parsed_args = parse_args(s)
# Do some stuff based on default values of args, some error checking, etc.
return parsed_args
end
This works but the length of the command line is getting a little silly. Is there a better way to do this? Some type of config file I type up and then feed to the parser? Just so I don’t have to type up such a long command at the terminal? Or is this typical?