With #92 and #100 we start to fix some of the remaining memory allocations in the dense backend. Proxsuite v0.2.7, containing these fixes, seems to be around 8% faster on our benchmarks. With #93 we add an option to easily check for allocations and we use the pipeline [conda:macos-latest:Debug:c++17] with the new option CHECK_RUNTIME_MALLOC. We can still see some unittests failing when we are not allowing for memory allocations.
In this commit, we identify all the places in the dense backend that need to allow for memory allocations to make all unittests pass. We should therefore understand if and how these can be fixed.
The remaining allocations seem to be coming from multiplications of Eigen::Maps.
With #92 and #100 we start to fix some of the remaining memory allocations in the dense backend. Proxsuite v0.2.7, containing these fixes, seems to be around 8% faster on our benchmarks. With #93 we add an option to easily check for allocations and we use the pipeline
[conda:macos-latest:Debug:c++17]with the new optionCHECK_RUNTIME_MALLOC. We can still see some unittests failing when we are not allowing for memory allocations.In this commit, we identify all the places in the dense backend that need to allow for memory allocations to make all unittests pass. We should therefore understand if and how these can be fixed.
The remaining allocations seem to be coming from multiplications of
Eigen::Maps.