From 28ccfbfc51068a663a80764e14074df5edf2b5ba Mon Sep 17 00:00:00 2001
From: kongdeqiang <kongdeqiang960204@163.com>
Date: 星期五, 13 三月 2026 17:41:41 +0800
Subject: [PATCH] 提交
---
runtime/python/utils/test_rtf_gpu.py | 60 ++++++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 42 insertions(+), 18 deletions(-)
diff --git a/runtime/python/utils/test_rtf_gpu.py b/runtime/python/utils/test_rtf_gpu.py
index 02d5ac6..38d4294 100644
--- a/runtime/python/utils/test_rtf_gpu.py
+++ b/runtime/python/utils/test_rtf_gpu.py
@@ -1,58 +1,82 @@
-
import time
import sys
import librosa
from funasr.utils.types import str2bool
import argparse
+
parser = argparse.ArgumentParser()
-parser.add_argument('--model_dir', type=str, required=True)
-parser.add_argument('--backend', type=str, default='onnx', help='["onnx", "torch"]')
-parser.add_argument('--wav_file', type=str, default=None, help='amp fallback number')
-parser.add_argument('--quantize', type=str2bool, default=False, help='quantized model')
-parser.add_argument('--intra_op_num_threads', type=int, default=1, help='intra_op_num_threads for onnx')
-parser.add_argument('--batch_size', type=int, default=1, help='batch_size for onnx')
+parser.add_argument("--model_dir", type=str, required=True)
+parser.add_argument("--backend", type=str, default="onnx", help='["onnx", "torch"]')
+parser.add_argument("--wav_file", type=str, default=None, help="amp fallback number")
+parser.add_argument("--quantize", type=str2bool, default=False, help="quantized model")
+parser.add_argument(
+ "--intra_op_num_threads", type=int, default=1, help="intra_op_num_threads for onnx"
+)
+parser.add_argument("--batch_size", type=int, default=1, help="batch_size for onnx")
args = parser.parse_args()
from funasr.runtime.python.libtorch.funasr_torch import Paraformer
+
if args.backend == "onnx":
from funasr.runtime.python.onnxruntime.funasr_onnx import Paraformer
-
-model = Paraformer(args.model_dir, batch_size=args.batch_size, quantize=args.quantize, intra_op_num_threads=args.intra_op_num_threads)
-wav_file_f = open(args.wav_file, 'r')
+model = Paraformer(
+ args.model_dir,
+ batch_size=args.batch_size,
+ quantize=args.quantize,
+ intra_op_num_threads=args.intra_op_num_threads,
+)
+
+wav_file_f = open(args.wav_file, "r")
wav_files = wav_file_f.readlines()
# warm-up
total = 0.0
num = 30
-wav_path = wav_files[0].split("\t")[1].strip() if "\t" in wav_files[0] else wav_files[0].split(" ")[1].strip()
+wav_path = (
+ wav_files[0].split("\t")[1].strip()
+ if "\t" in wav_files[0]
+ else wav_files[0].split(" ")[1].strip()
+)
for i in range(num):
beg_time = time.time()
result = model(wav_path)
end_time = time.time()
- duration = end_time-beg_time
+ duration = end_time - beg_time
total += duration
print(result)
- print("num: {}, time, {}, avg: {}, rtf: {}".format(len(wav_path), duration, total/(i+1), (total/(i+1))/5.53))
+ print(
+ "num: {}, time, {}, avg: {}, rtf: {}".format(
+ len(wav_path), duration, total / (i + 1), (total / (i + 1)) / 5.53
+ )
+ )
# infer time
wav_path = []
beg_time = time.time()
for i, wav_path_i in enumerate(wav_files):
- wav_path_i = wav_path_i.split("\t")[1].strip() if "\t" in wav_path_i else wav_path_i.split(" ")[1].strip()
+ wav_path_i = (
+ wav_path_i.split("\t")[1].strip()
+ if "\t" in wav_path_i
+ else wav_path_i.split(" ")[1].strip()
+ )
wav_path += [wav_path_i]
result = model(wav_path)
end_time = time.time()
-duration = (end_time-beg_time)*1000
+duration = (end_time - beg_time) * 1000
print("total_time_comput_ms: {}".format(int(duration)))
duration_time = 0.0
for i, wav_path_i in enumerate(wav_files):
- wav_path = wav_path_i.split("\t")[1].strip() if "\t" in wav_path_i else wav_path_i.split(" ")[1].strip()
+ wav_path = (
+ wav_path_i.split("\t")[1].strip()
+ if "\t" in wav_path_i
+ else wav_path_i.split(" ")[1].strip()
+ )
waveform, _ = librosa.load(wav_path, sr=16000)
- duration_time += len(waveform)/16.0
+ duration_time += len(waveform) / 16.0
print("total_time_wav_ms: {}".format(int(duration_time)))
-print("total_rtf: {:.5}".format(duration/duration_time))
\ No newline at end of file
+print("total_rtf: {:.5}".format(duration / duration_time))
--
Gitblit v1.9.1