Here are the results of the CPU and Memory usage:
Only one 4096FFT running:
Code:
fftPre = 0 (0 max), fftPost = 77 (78 max), All = 78.71 (79.56 max), Memory: 19 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.43 (79.56 max), Memory: 31 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.42 (79.56 max), Memory: 26 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.41 (79.56 max), Memory: 24 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.41 (79.56 max), Memory: 24 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.41 (79.56 max), Memory: 24 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.46 (79.56 max), Memory: 24 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.46 (79.56 max), Memory: 24 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.46 (79.56 max), Memory: 24 (37 max)
fftPre = 0 (0 max), fftPost = 77 (78 max), All = 78.79 (79.56 max), Memory: 19 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.43 (79.56 max), Memory: 31 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.42 (79.56 max), Memory: 26 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.45 (79.56 max), Memory: 23 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.44 (79.56 max), Memory: 23 (37 max)
fftPre = 0 (0 max), fftPost = 77 (78 max), All = 78.81 (79.56 max), Memory: 19 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.42 (79.56 max), Memory: 31 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.42 (79.56 max), Memory: 26 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.45 (79.56 max), Memory: 23 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.42 (79.56 max), Memory: 19 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.43 (79.56 max), Memory: 30 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.43 (79.56 max), Memory: 25 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.45 (79.56 max), Memory: 23 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.45 (79.56 max), Memory: 23 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.44 (79.56 max), Memory: 23 (37 max)
fftPre = 0 (0 max), fftPost = 77 (78 max), All = 78.74 (79.56 max), Memory: 19 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.42 (79.56 max), Memory: 31 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.42 (79.56 max), Memory: 26 (37 max)
fftPre = 0 (0 max), fftPost = 0 (78 max), All = 1.44 (79.56 max), Memory: 23 (37 max)
fftPre = 0 (0 max), fftPost = 77 (78 max), All = 78.77 (79.56 max), Memory: 19 (37 max)
Two 4096FFT running:
Code:
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.47 (7.37 max), Memory: 23 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.46 (6.73 max), Memory: 23 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.47 (6.93 max), Memory: 24 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.46 (6.88 max), Memory: 24 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (6.98 max), Memory: 25 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.06 max), Memory: 25 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.23 max), Memory: 26 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.37 max), Memory: 26 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.03 max), Memory: 27 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.53 max), Memory: 27 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.05 max), Memory: 28 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.32 max), Memory: 28 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.14 max), Memory: 29 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.09 max), Memory: 29 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (6.88 max), Memory: 30 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.19 max), Memory: 30 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (6.99 max), Memory: 31 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.46 (6.98 max), Memory: 31 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.36 max), Memory: 32 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.34 max), Memory: 32 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.08 max), Memory: 33 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.10 max), Memory: 33 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.33 max), Memory: 34 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.59 max), Memory: 34 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.53 max), Memory: 24 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.45 (7.73 max), Memory: 25 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.45 (7.45 max), Memory: 25 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.14 max), Memory: 26 (37 max)
fftPre = 0 (79 max), fftPost = 0 (78 max), All = 1.44 (7.55 max), Memory: 26 (37 max)
As it seems, one FFT takes ca. 80% of the CPU usage, therefore it's obvious that 2 FFTs are going to exceed the total CPU usage (more than 100%).
I've changed the AudioMemory to 160 but got the same result. I think memory is not the problem in this case.
Is there a possibility to split the FFT processing functions or optimize the code to increase the efficiency?