Skip to content

Commit e1a9051

Browse files
authored
Merge pull request #376 from anandhu-eng/path-str-fix
Path string fix
2 parents 4976801 + 128d798 commit e1a9051

File tree

2 files changed

+25
-20
lines changed

2 files changed

+25
-20
lines changed

.github/workflows/test-mlperf-inference-resnet50-closed-division.yml

+9-2
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,6 @@ jobs:
5555
- uses: actions/checkout@v4
5656
with:
5757
fetch-depth: 0
58-
5958
- name: Set up Python ${{ matrix.python-version }}
6059
uses: actions/setup-python@v3
6160
with:
@@ -64,7 +63,15 @@ jobs:
6463
if: matrix.os == 'windows-latest'
6564
run: |
6665
git config --system core.longpaths true
67-
66+
- name: Export MLC_REPOS in Linux or Mac
67+
if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest'
68+
run: |
69+
echo "MLC_REPOS=$HOME/gh action/mlc" >> $GITHUB_ENV
70+
- name: Export MLC_REPOS in Windows
71+
if: matrix.os == 'windows-latest'
72+
run: |
73+
$mlcrepos = "${env:USERPROFILE}\gh action\mlc"
74+
"MLC_REPOS=$mlcRepos" | Out-File -FilePath $env:GITHUB_ENV -Append
6875
- name: Install mlcflow
6976
run: |
7077
pip install mlcflow

script/app-mlperf-inference/customize.py

+16-18
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ def postprocess(i):
5555
os_info = i['os_info']
5656

5757
xsep = '^' if os_info['platform'] == 'windows' else '\\'
58+
q = '"' if os_info['platform'] == 'windows' else "'"
5859

5960
env = i['env']
6061
inp = i['input']
@@ -119,14 +120,13 @@ def postprocess(i):
119120

120121
if mode == "accuracy" or mode == "compliance" and env[
121122
'MLC_MLPERF_LOADGEN_COMPLIANCE_TEST'] == "TEST01":
122-
out_baseline_accuracy_string = f"""> {os.path.join(output_dir, "accuracy", "baseline_accuracy.txt")} """
123-
out_compliance_accuracy_string = f"""> {os.path.join(output_dir, "accuracy", "compliance_accuracy.txt")} """
123+
out_baseline_accuracy_string = f"""> {q}{os.path.join(output_dir, "accuracy", "baseline_accuracy.txt")}{q} """
124+
out_compliance_accuracy_string = f"""> {q}{os.path.join(output_dir, "accuracy", "compliance_accuracy.txt")}{q} """
124125
if model == "resnet50":
125126
accuracy_filename = "accuracy-imagenet.py"
126127
accuracy_filepath = os.path.join(env['MLC_MLPERF_INFERENCE_CLASSIFICATION_AND_DETECTION_PATH'], "tools",
127128
accuracy_filename)
128-
dataset_args = " --imagenet-val-file " + \
129-
os.path.join(env['MLC_DATASET_AUX_PATH'], "val.txt")
129+
dataset_args = f""" --imagenet-val-file {q}{os.path.join(env['MLC_DATASET_AUX_PATH'], "val.txt")}{q} """
130130
accuracy_log_file_option_name = " --mlperf-accuracy-file "
131131
datatype_option = " --dtype " + env['MLC_IMAGENET_ACCURACY_DTYPE']
132132

@@ -141,8 +141,8 @@ def postprocess(i):
141141
accuracy_filename = "accuracy-openimages.py"
142142
accuracy_filepath = os.path.join(env['MLC_MLPERF_INFERENCE_CLASSIFICATION_AND_DETECTION_PATH'], "tools",
143143
accuracy_filename)
144-
dataset_args = " --openimages-dir " + \
145-
os.getcwd() # just to make the script happy
144+
# just to make the script happy
145+
dataset_args = f""" --openimages-dir {q}{os.getcwd()}{q} """
146146
accuracy_log_file_option_name = " --mlperf-accuracy-file "
147147
datatype_option = ""
148148

@@ -165,8 +165,8 @@ def postprocess(i):
165165
env['MLC_DATASET_IGBH_SIZE'] + "'"
166166
accuracy_log_file_option_name = " --mlperf-accuracy-file "
167167
datatype_option = ""
168-
out_baseline_accuracy_string = f""" --output-file {os.path.join(output_dir, "accuracy", "baseline_accuracy.txt")} """
169-
out_compliance_accuracy_string = f""" --output-file {os.path.join(output_dir, "accuracy", "compliance_accuracy.txt")} """
168+
out_baseline_accuracy_string = f""" --output-file {q}{os.path.join(output_dir, "accuracy", "baseline_accuracy.txt")}{q} """
169+
out_compliance_accuracy_string = f""" --output-file {q}{os.path.join(output_dir, "accuracy", "compliance_accuracy.txt")}{q} """
170170

171171
elif 'stable-diffusion-xl' in model:
172172
pass # No compliance check for now
@@ -499,9 +499,9 @@ def postprocess(i):
499499
test,
500500
"run_verification.py")
501501
if test == "TEST06":
502-
cmd = f"{env['MLC_PYTHON_BIN_WITH_PATH']} {SCRIPT_PATH} -c {COMPLIANCE_DIR} -o {OUTPUT_DIR} --scenario {scenario} --dtype int32"
502+
cmd = f"""{env['MLC_PYTHON_BIN_WITH_PATH']} {q}{SCRIPT_PATH}{q} -c {q}{COMPLIANCE_DIR}{q} -o {q}{OUTPUT_DIR}{q} --scenario {scenario} --dtype int32"""
503503
else:
504-
cmd = f"{env['MLC_PYTHON_BIN_WITH_PATH']} {SCRIPT_PATH} -r {RESULT_DIR} -c {COMPLIANCE_DIR} -o {OUTPUT_DIR}"
504+
cmd = f"""{env['MLC_PYTHON_BIN_WITH_PATH']} {q}{SCRIPT_PATH}{q} -r {q}{RESULT_DIR}{q} -c {q}{COMPLIANCE_DIR}{q} -o {q}{OUTPUT_DIR}{q}"""
505505

506506
print(cmd)
507507
os.system(cmd)
@@ -524,8 +524,7 @@ def postprocess(i):
524524
return {
525525
'return': 1, 'error': 'TEST01 needs accuracy run to be completed first'}
526526

527-
cmd = "cd " + TEST01_DIR + " && bash " + SCRIPT_PATH + " " + os.path.join(ACCURACY_DIR, "mlperf_log_accuracy.json") + " " + \
528-
os.path.join(COMPLIANCE_DIR, "mlperf_log_accuracy.json")
527+
cmd = f"""cd {q}{TEST01_DIR}{q} && bash {q}{SCRIPT_PATH}{q} {q}{os.path.join(ACCURACY_DIR, "mlperf_log_accuracy.json")}{q} {q}{os.path.join(COMPLIANCE_DIR, "mlperf_log_accuracy.json")}{q} """
529528
env['CMD'] = cmd
530529
print(cmd)
531530
r = automation.run_native_script(
@@ -544,9 +543,8 @@ def postprocess(i):
544543

545544
baseline_accuracy_file = os.path.join(
546545
TEST01_DIR, "mlperf_log_accuracy_baseline.json")
547-
CMD = "cd " + ACCURACY_DIR + " && " + env['MLC_PYTHON_BIN_WITH_PATH'] + ' ' + accuracy_filepath + accuracy_log_file_option_name + \
548-
baseline_accuracy_file + ' ' + dataset_args + \
549-
datatype_option + out_baseline_accuracy_string
546+
CMD = f"""cd {q}{ACCURACY_DIR}{q} && {q}{env['MLC_PYTHON_BIN_WITH_PATH']}{q} {q}{accuracy_filepath}{q} \
547+
{accuracy_log_file_option_name} {q}{baseline_accuracy_file}{q} {dataset_args} {datatype_option} {out_baseline_accuracy_string} """
550548

551549
env['CMD'] = CMD
552550
r = automation.run_native_script(
@@ -558,9 +556,9 @@ def postprocess(i):
558556
return {'return': 1,
559557
'error': f"{baseline_accuracy_file} is empty"}
560558

561-
CMD = "cd " + ACCURACY_DIR + " && " + env['MLC_PYTHON_BIN_WITH_PATH'] + ' ' + accuracy_filepath + accuracy_log_file_option_name + \
562-
os.path.join(TEST01_DIR, "mlperf_log_accuracy.json") + \
563-
dataset_args + datatype_option + out_compliance_accuracy_string
559+
CMD = f"""cd {q}{ACCURACY_DIR}{q} && {q}{env['MLC_PYTHON_BIN_WITH_PATH']}{q} {q}{accuracy_filepath}{q} \
560+
{accuracy_log_file_option_name} {q}{os.path.join(TEST01_DIR, "mlperf_log_accuracy.json")}{q} {dataset_args} {datatype_option} \
561+
{out_compliance_accuracy_string} """
564562

565563
env['CMD'] = CMD
566564
r = automation.run_native_script(

0 commit comments

Comments
 (0)