1# Rockchip AEC_ANR_AGC算法 2 3## compile 4 5mkdir -p build 6cd build 7cmake .. -DCMAKE_TOOLCHAIN_FILE=~/video/rv1109/buildroot/output/rockchip_puma_toolchain/host/share/buildroot/toolchainfile.cmake 8make 9 10优化选项: -O3 -mfpu=neon -mfloat-abi=hard 11 12## 资源占用情况 13 14### 测试环境 15 16* RV1808 EVB 17 18* cpu: 关闭ARM核保留一个核,定频 1Ghz 19 20 echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor 21 22 echo 1008000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed 23 24 echo 0 > /sys/devices/system/cpu/cpu1/online 25 26* ddr : LPDDR3 933MHz 27 28### Test 29 30* 内存占用情况:RSS 1.6M 31 32* 计算耗时 cpu 37% 33 34 * ./test_aec_anr_agc csq_0_1mic.wav csq_0_1mic-out.wav 35 filename=csq_0_1mic.wav format=1 num_channels=2 sample_rate=16000 sample_bits=16 num_samples=128001 36 mic_channel = 1, ref channel = 1 37 init ch 0 38 init ch 0 succeed 39 init ok 40 alloc ok 41 elapse 6 ms //PROCESS TX 16ms数据 42 43 elapse 0 ms //PROCESS RX 44 elapse 6 ms 45 elapse 0 ms 46 elapse 6 ms 47 elapse 0 ms 48 elapse 6 ms 49 elapse 0 ms 50 elapse 6 ms 51 elapse 0 ms 52 53* 稳定性测试 54 * 多实例循环压力测试通过:没有内存泄露,可以稳定长时运行 55 56 57 # cat /proc/673/status 58 Name: test_aec_anr_ag 59 State: R (running) 60 Tgid: 673 61 Ngid: 0 62 Pid: 673 63 PPid: 609 64 TracerPid: 0 65 Uid: 0 0 0 0 66 Gid: 0 0 0 0 67 FDSize: 64 68 Groups: 69 VmPeak: 2444 kB 70 VmSize: 2444 kB 71 VmLck: 0 kB 72 VmPin: 0 kB 73 VmHWM: 1672 kB 74 VmRSS: 1672 kB 75 VmData: 292 kB 76 VmStk: 132 kB 77 VmExe: 8 kB 78 VmLib: 1784 kB 79 VmPTE: 20 kB 80 VmPMD: 8 kB 81 VmSwap: 0 kB 82 Threads: 1 83 SigQ: 0/7992 84 SigPnd: 0000000000000000 85 ShdPnd: 0000000000000000 86 SigBlk: 0000000000000000 87 SigIgn: 0000000000000000 88 SigCgt: 0000000000000000 89 CapInh: 0000000000000000 90 CapPrm: 0000003fffffffff 91 CapEff: 0000003fffffffff 92 CapBnd: 0000003fffffffff 93 CapAmb: 0000000000000000 94 Speculation_Store_Bypass: unknown 95 Cpus_allowed: 3 96 Cpus_allowed_list: 0-1 97 Mems_allowed: 1 98 Mems_allowed_list: 0 99 voluntary_ctxt_switches: 1 100 nonvoluntary_ctxt_switches: 38 101