Open ztjjj9 opened 6 months ago
The results in the 1st BLASFEO paper https://arxiv.org/abs/1704.02457 are for matrices in panel-major (so no timing of possible conversions from and to other formats). The assumption is that it is possible to write the entire algorithm (e.g. the entire interior point method in HPIPM) using the panel-major matrix format, so there are no conversions from and to column- or row-major matrix formats (or only at an higher interface level, so the conversion cost is negligible). As described in the paper, the advantage of the panel-major matrix format is that this is somehow similar to the format internally used by all other optimized BLAS implementations (e.g. MKL, OpenBLAS, BLIS, GotoBLAS, ...) and thus it allows for high computational performance. And, by being exposed and allowing the entire algorithm to be coded with it avoiding unnecessary conversions between matrix formats (implicitly performed within BLAS itself), it greatly improves performance for small-ish matrices.
If you need to convert from and to column- or row-major format at each BLASFEO routine call, then it's more efficient to use the standard BLAS and LAPACK API provided by BLASFEO, as described in the 2nd BLASFEO paper https://arxiv.org/abs/1902.08115.
Thank you for your answer, I understand!
Hello, I am very interested in your work. I would like to ask if the testing results in your paper did not transform the raw data into “panel” for cost calculation? And what are the advantages of panel-based computation compared to column-major or row-major computation? Thanks!