webrtc/resources/audio_processing/agc2/rnn_vad
Alessio Bazzica 4e9c5b592a RNN VAD: GRU layer optimized
Using `VectorMath::DotProduct()` in GatedRecurrentLayer to reuse existing
SIMD optimizations. Results:
- When SSE2/AVX2 is avilable, the GRU layer takes 40% of the unoptimized
  code
- The realtime factor for the VAD improved as follows
  - SSE2: from 570x to 630x
  - AVX2: from 610x to 680x

This CL also improved the GRU layer benchmark by (i) benchmarking a GRU
layer havibng the same size of that used in the VAD and (ii) by prefetching
a long input sequence.

Bug: webrtc:10480
Change-Id: I9716b15661e4c6b81592b4cf7c172d90e41b5223
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/195545
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32803}
2020-12-08 15:37:38 +00:00
..
band_energies.dat.sha1 AGC2 RNN VAD: Spectral features internal API. 2018-05-08 11:52:32 +00:00
gru_in.dat.sha1 RNN VAD: GRU layer optimized 2020-12-08 15:37:38 +00:00
pitch_buf_24k.dat.sha1
pitch_lp_res.dat.sha1
pitch_search_int.dat.sha1 AGC2 RNN VAD: Polishing. 2018-05-15 16:41:02 +00:00
samples.pcm.sha1 AGC2 RNN VAD: Polishing. 2018-05-15 16:41:02 +00:00
vad_prob.dat.sha1 RNN VAD: clean-up unit tests 2019-04-29 12:55:02 +00:00