# Inference Performance ## Test Scripts ```python from towhee import ops import time decode = ops.audio_decode.ffmpeg() audio = [x[0] for x in decode('path/to/test.wav')] op = ops.audio_embedding.nnfp() # op = ops.audio_embedding.nnfp(model_path='path/to/torchscript/model.pt') # op = ops.audio_embedding.nnfp(model_path='path/to/model.onnx') start = time.time() for _ in range(100): embs = op(audio) assert(embs.shape == (10, 128)) end = time.time() print((end-start) / 100) ``` ## Performance (Default model) - Device: MacOS, 2.3 GHz Quad-Core Intel Core i7, 8 CPUs - Input: 10s mono audio, shape (1, ), sr , loop for 100 times | inference method | mem usage | avg time | | -- | -- | -- | | pytorch | 0.3G | 0.451s | | torchscript | 0.3G | 0.470s | | onnx | 0.3G | 0.378s | - Device: MacOS, 2.3 GHz Quad-Core Intel Core i7, 8 CPUs - Input: 188s stereo audio, shape (2, 8328408), sr 44100, loop for 100 times | inference method | mem usage | avg time | | -- | -- | -- | | pytorch | 2.6G | 8.162s | | torchscript | 2.8G | 7.507s | | onnx | 1.7G | 6.769s | - Device: MacOS, 2.3 GHz Quad-Core Intel Core i7, 8 CPUs - Input: 600s stereo audio, shape (2, 28800000), sr 48000, loop for 20 times | inference method | mem usage | avg time | | -- | -- | -- | | pytorch | 5G | 22.540s | | torchscript | 4.9G | 22.514s | | onnx | 3.4G | 17.874s | ## Performance (Distilled model) - Device: MacOS, 2.3 GHz Quad-Core Intel Core i7, 8 CPUs - Input: 188s stereo audio, shape (2, 8328408), sr 44100, loop for 20 times | inference method | mem usage | avg time | | -- | -- | -- | | pytorch | 2.6G | 7.215s | | torchscript | 2.8G | 7.220s | | onnx | 1G | 6.410s | - Device: MacOS, 2.3 GHz Quad-Core Intel Core i7, 8 CPUs - Input: 600s stereo audio, shape (2, 28800000), sr 48000, loop for 20 times | inference method | mem usage | avg time | | -- | -- | -- | | pytorch | 4.9G | 22.482s | | torchscript | 5.1G | 21.511s | | onnx | 3.4G | 17.709s |