Skip to content

Commit 3c0c994

Browse files
pytorchbotGuang Yang
andauthored
Fix reporting backends and dtyep to benchmark results (#6073)
Fix reporting backends and dtyep to benchmark results (#6023) Summary: Couple minor fixes for reporting the benchmarking results: - qnn models are not reporting "backend" and "dtype" info in the benchmark_results.json (Android) - tinyllama mdoel is not reporting "backend" and "dtype" info in the benchmark_results.json (Android) - include compute precision to the exported coreml model name - rename "llama2" to "tinyllama" to eliminate confusion (many people thought it was llama2-7b) Pull Request resolved: #6023 Reviewed By: huydhn Differential Revision: D64074262 Pulled By: guangy10 fbshipit-source-id: c6c53d004c4fb3ad410a792639af2c22a6978b67 (cherry picked from commit 012cba9) Co-authored-by: Guang Yang <[email protected]>
1 parent dc496bb commit 3c0c994

File tree

9 files changed

+22
-16
lines changed

9 files changed

+22
-16
lines changed

.ci/scripts/test_llama.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ else
171171
fi
172172

173173
# Check dtype.
174-
EXPORTED_MODEL_NAME="llama2"
174+
EXPORTED_MODEL_NAME="tinyllama_${MODE}_${DTYPE}"
175175
if [[ "${DTYPE}" == "fp16" ]]; then
176176
EXPORTED_MODEL_NAME="${EXPORTED_MODEL_NAME}_h"
177177
elif [[ "${DTYPE}" == "fp32" ]]; then

.ci/scripts/test_model.sh

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -155,30 +155,24 @@ test_model_with_qnn() {
155155

156156
if [[ "${MODEL_NAME}" == "dl3" ]]; then
157157
EXPORT_SCRIPT=deeplab_v3
158-
EXPORTED_MODEL_NAME=dlv3_qnn.pte
159158
elif [[ "${MODEL_NAME}" == "mv3" ]]; then
160159
EXPORT_SCRIPT=mobilenet_v3
161-
EXPORTED_MODEL_NAME=mv3_qnn.pte
162160
elif [[ "${MODEL_NAME}" == "mv2" ]]; then
163161
EXPORT_SCRIPT=mobilenet_v2
164-
EXPORTED_MODEL_NAME=mv2_qnn.pte
165162
elif [[ "${MODEL_NAME}" == "ic4" ]]; then
166163
EXPORT_SCRIPT=inception_v4
167-
EXPORTED_MODEL_NAME=ic4_qnn.pte
168164
elif [[ "${MODEL_NAME}" == "ic3" ]]; then
169165
EXPORT_SCRIPT=inception_v3
170-
EXPORTED_MODEL_NAME=ic3_qnn.pte
171166
elif [[ "${MODEL_NAME}" == "vit" ]]; then
172167
EXPORT_SCRIPT=torchvision_vit
173-
EXPORTED_MODEL_NAME=vit_qnn.pte
174168
fi
175169

176170
# Use SM8450 for S22, SM8550 for S23, and SM8560 for S24
177171
# TODO(guangyang): Make QNN chipset matches the target device
178172
QNN_CHIPSET=SM8450
179173

180174
"${PYTHON_EXECUTABLE}" -m examples.qualcomm.scripts.${EXPORT_SCRIPT} -b ${CMAKE_OUTPUT_DIR} -m ${QNN_CHIPSET} --compile_only
181-
EXPORTED_MODEL=./${EXPORT_SCRIPT}/${EXPORTED_MODEL_NAME}
175+
EXPORTED_MODEL=$(find "./${EXPORT_SCRIPT}" -type f -name "${MODEL_NAME}*.pte" -print -quit)
182176
}
183177

184178
test_model_with_coreml() {
@@ -187,8 +181,20 @@ test_model_with_coreml() {
187181
exit 1
188182
fi
189183

190-
"${PYTHON_EXECUTABLE}" -m examples.apple.coreml.scripts.export --model_name="${MODEL_NAME}"
184+
DTYPE=float16
185+
186+
"${PYTHON_EXECUTABLE}" -m examples.apple.coreml.scripts.export --model_name="${MODEL_NAME}" --compute_precision "${DTYPE}"
191187
EXPORTED_MODEL=$(find "." -type f -name "${MODEL_NAME}*.pte" -print -quit)
188+
# TODO:
189+
if [ -n "$EXPORTED_MODEL" ]; then
190+
EXPORTED_MODEL_WITH_DTYPE="${EXPORTED_MODEL%.pte}_${DTYPE}.pte"
191+
mv "$EXPORTED_MODEL" "$EXPORTED_MODEL_WITH_DTYPE"
192+
EXPORTED_MODEL="$EXPORTED_MODEL_WITH_DTYPE"
193+
echo "Renamed file path: $EXPORTED_MODEL"
194+
else
195+
echo "No .pte file found"
196+
exit 1
197+
fi
192198
}
193199

194200
if [[ "${BACKEND}" == "portable" ]]; then

examples/qualcomm/scripts/deeplab_v3.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ def main(args):
8282
data_size=data_num, dataset_dir=args.artifact, download=args.download
8383
)
8484

85-
pte_filename = "dlv3_qnn"
85+
pte_filename = "dl3_qnn_q8"
8686
instance = DeepLabV3ResNet101Model()
8787

8888
build_executorch_binary(

examples/qualcomm/scripts/edsr.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ def main(args):
108108
)
109109

110110
inputs, targets, input_list = dataset.lr, dataset.hr, dataset.get_input_list()
111-
pte_filename = "edsr_qnn"
111+
pte_filename = "edsr_qnn_q8"
112112
instance = EdsrModel()
113113

114114
build_executorch_binary(

examples/qualcomm/scripts/inception_v3.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ def main(args):
7878
dataset_path=f"{args.dataset}",
7979
data_size=data_num,
8080
)
81-
pte_filename = "ic3_qnn"
81+
pte_filename = "ic3_qnn_q8"
8282
instance = InceptionV3Model()
8383
build_executorch_binary(
8484
instance.get_eager_model().eval(),

examples/qualcomm/scripts/inception_v4.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ def main(args):
7777
dataset_path=f"{args.dataset}",
7878
data_size=data_num,
7979
)
80-
pte_filename = "ic4_qnn"
80+
pte_filename = "ic4_qnn_q8"
8181
instance = InceptionV4Model()
8282
build_executorch_binary(
8383
instance.get_eager_model().eval(),

examples/qualcomm/scripts/mobilenet_v2.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ def main(args):
7878
dataset_path=f"{args.dataset}",
7979
data_size=data_num,
8080
)
81-
pte_filename = "mv2_qnn"
81+
pte_filename = "mv2_qnn_q8"
8282
instance = MV2Model()
8383
build_executorch_binary(
8484
instance.get_eager_model().eval(),

examples/qualcomm/scripts/mobilenet_v3.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ def main(args):
7777
dataset_path=f"{args.dataset}",
7878
data_size=data_num,
7979
)
80-
pte_filename = "mv3_qnn"
80+
pte_filename = "mv3_qnn_float16"
8181
instance = MV3Model()
8282
build_executorch_binary(
8383
instance.get_eager_model().eval(),

examples/qualcomm/scripts/torchvision_vit.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ def main(args):
7070
data_size=data_num,
7171
)
7272

73-
pte_filename = "vit_qnn"
73+
pte_filename = "vit_qnn_q8"
7474
instance = TorchVisionViTModel()
7575
build_executorch_binary(
7676
instance.get_eager_model().eval(),

0 commit comments

Comments
 (0)