parser.add_argument("input_jobs",help='path to the CSV file that contains the jobs information')
parser.add_argument("input_power_timeseries_prefix",help="filepath prefix to the location of the parquet files that contain node power consumption time series")
parser.add_argument("--begin",required=True,type=datetime_parser,help='the starting datetime of the interval to replay. example: 2022-01-01 00:00:00')
parser.add_argument("--end",required=True,type=datetime_parser,help='the end datetime of the interval to replay. example: 2022-01-31 23:59:59')
parser.add_argument("-p","--profile_type",choices=['delay'],required=True,help='the profile type to use')
parser.add_argument("-p","--profile_type",choices=['delay','usage_replay'],required=True,help='the profile type to use')
parser.add_argument("--max_job_duration",type=int,default=60*60*24,help='the maximum number of seconds of a job. longer jobs will be truncated when replayed')
parser.add_argument("--min_power",type=float,default=240.0,help='the minimum power value to use for power-related profiles')
parser.add_argument("--max_power",type=float,default=2100.0,help='the maximum power value to use for power-related profiles')
parser.add_argument("--host_flops",default=1e9,help='the maximum power value to use for power-related profiles')
parser.add_argument("--max_processes",type=int,default=64,help='the maximum number of processes to use to generate the workload files')
parser.add_argument("-o","--output_dir",required=True,help="filepath where all the workload-related files should be generated")
args=parser.parse_args()
assertargs.max_power>args.min_power
assertargs.max_job_duration<28*60*60*24,'this script does not handle jobs longer than one month'