This reverts commit 5ab21f8853892205594ae8559a00b431f30a8a06. Reason for revert: downstream fixed Original change's description: > Revert "RNN VAD: prepare for SIMD optimization" > > This reverts commit 7350a902374c796dec8ce583cfaf4b9697f3a525. > > Reason for revert: possibly breaking downstream projects > > Original change's description: > > RNN VAD: prepare for SIMD optimization > > > > This CL adds the boilerplate for SIMD optimization of FC and GRU layers > > in rnn.cc. The same scheme of AEC3 has been used. Unit tests for the > > optimized architectures have been added (the same unoptimized > > implementation will run). > > > > Minor changes: > > - unnecessary const removed in rnn.h > > - FC and GRU test data in the anon namespace as constexpr > > > > Bug: webrtc:10480 > > Change-Id: Ifae4e970326e7e7c603d49aeaf61194b5efdabd3 > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/141419 > > Commit-Queue: Alessio Bazzica <alessiob@webrtc.org> > > Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org> > > Cr-Commit-Position: refs/heads/master@{#29696} > > TBR=gustaf@webrtc.org,alessiob@webrtc.org,fhernqvist@webrtc.org > > Change-Id: I9ae82f4bd2d30797646fabfb5ad16bea378208b8 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: webrtc:10480 > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/158893 > Reviewed-by: Alessio Bazzica <alessiob@webrtc.org> > Commit-Queue: Alessio Bazzica <alessiob@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#29699} TBR=gustaf@webrtc.org,alessiob@webrtc.org,fhernqvist@webrtc.org Change-Id: I33edd144f7ac795bf472aae9fa5a79c326000443 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: webrtc:10480 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/159001 Reviewed-by: Alessio Bazzica <alessiob@webrtc.org> Commit-Queue: Alessio Bazzica <alessiob@webrtc.org> Cr-Commit-Position: refs/heads/master@{#29708}
35 lines
908 B
C++
35 lines
908 B
C++
/*
|
|
* Copyright (c) 2019 The WebRTC project authors. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license
|
|
* that can be found in the LICENSE file in the root of the source
|
|
* tree. An additional intellectual property rights grant can be found
|
|
* in the file PATENTS. All contributing project authors may
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
|
|
#include "modules/audio_processing/agc2/rnn_vad/common.h"
|
|
|
|
#include "rtc_base/system/arch.h"
|
|
#include "system_wrappers/include/cpu_features_wrapper.h"
|
|
|
|
namespace webrtc {
|
|
namespace rnn_vad {
|
|
|
|
Optimization DetectOptimization() {
|
|
#if defined(WEBRTC_ARCH_X86_FAMILY)
|
|
if (WebRtc_GetCPUInfo(kSSE2) != 0) {
|
|
return Optimization::kSse2;
|
|
}
|
|
#endif
|
|
|
|
#if defined(WEBRTC_HAS_NEON)
|
|
return Optimization::kNeon;
|
|
#endif
|
|
|
|
return Optimization::kNone;
|
|
}
|
|
|
|
} // namespace rnn_vad
|
|
} // namespace webrtc
|