This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
My test code
double a = 142.224389823827; double b = 0; for (long i = 0; i < 100000000; i++) { b = powdp(a,2); // a^2 }
This code takes 20 seconds to run on the TDA4VM C66 and 4 seconds on the TDA4VM CPU.
is this normal?
Hi,
Can you specify what processor you are referring to when talking about TDA4VM CPU?
Can you provide more details on how you are measuring performance?
Best,
Asha
TDA4VM CPU: Arm Cortex-A72 64bits 2.0GHz
Test code:
#include <math.h> #include <stdio.h> int main() { double a = 142.224389823827; double b = 0; for (long i = 0; i < 100000000; i++) { b = pow(a,2); // a^2 } return 0; }
it takes 4 senconds
Compare with C66x,run code as:
#include <ti/mathlib/mathlib.h> int main() { double a = 142.224389823827; double b = 0; for (long i = 0; i < 100000000; i++) { b = powdp_i(a,2); // a^2 } return 0; }
and it takes 20 seconds
Hi,
I wouldn't expect such performance on C66x when using the mathlib libraries.
Are you running on a TI TDA4VM EVM with the C66x processor running at 1.35GHz?
Best,
Asha
Hi,
I am sure it is running on the TDA4VM EVM with C66x, but I am not sure about the running frequency.
do you mean the frequency of the c66x is configurable?
Hi,
I just wanted to check what board you are running on, thank you for clarifying that it is a TI EVM.
I would expect you would get values closer to what we publish in the MATHLIB test report (MATHLIB_c66x_TestReport.html). The numbers here are reported in cycles however, not time.
I can get back to your issue and see if I can reproduce the numbers that you are seeing and provide an update by 5/30.
Best,
Asha
Hi,
I have made progress, however I will still need a few days to investigate further. I will try to provide an update on this by 6/4. I apologize for the delay.
Best,
Asha
Hi,
I apologize for the delay in concluding the conversation on this issue.
I was able to run the same test code you have provided on C66x and for 100000000 iterations, I am seeing it takes a while for the C66 to complete execution as you have noted. We are currently not performing performance tests between A72 and C66x, so if in this case A72 is performing better, you can continue using the A72 core to run various functions if that is what best meets your performance and accuracy needs. Overall, we are not supporting further improvements on the C66x MATHLIB functions in our SDK releases, so the optimizations and performance at the function level will remain the same.
Best,
Asha