Symetric matrix power optimization
이전 댓글 표시
Hello,
I would like to calculate A^p where A is a symetric matrix. I know that I can use A^p but i would like to know is there is way to calculate only (n²+n)/2 coefficients and just paste the (n²-n)/2 last that are equals ? Or simply do this optimization for A*B where A and B are both symetrics ?
Thank you :)
댓글 수: 4
Bruno Luong
2021년 4월 29일
What typical values of n and p ?
Damien GUILLOTIN
2021년 4월 29일
Bruno Luong
2021년 4월 30일
편집: Bruno Luong
2021년 4월 30일
"Or simply do this optimization for A*B where A and B are both symetrics ?"
How? For generic A and B symmetric the product is NOT symmetric. If you decide to access only the upper parts of A and B, you make memory access pattern more complex and inefficient for caching.
Damien GUILLOTIN
2021년 4월 30일
채택된 답변
추가 답변 (1개)
Jan
2021년 4월 29일
0 개 추천
Are you using this already:
- https://www.mathworks.com/matlabcentral/fileexchange/25782-mpower2-a-faster-matrix-power-function
- https://www.mathworks.com/matlabcentral/fileexchange/44575-matrix-power
Do you have a C compiler such that you can try to modify the above solutions and call LAPACK:DSYMM instead of DGEMM?
댓글 수: 2
Damien GUILLOTIN
2021년 4월 29일
Bruno Luong
2021년 4월 30일
편집: Bruno Luong
2021년 4월 30일
I revisit mpower2 and all the speed up around 2010 when the FEX is publiseh becomes very little now wth R2021a.
카테고리
도움말 센터 및 File Exchange에서 Surrogate Optimization에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!