Skip to content

Commit 526f56c

Browse files
committed
Add OpenBLAS for NEON-optimized matrix operations
Added OpenBLAS to vcpkg dependencies to accelerate Armadillo's Cholesky decomposition with hand-tuned ARM NEON kernels. Expected 2-5x speedup for clutter filter Cholesky operations (450ms -> 90-180ms target). Updated Dockerfile to copy OpenBLAS runtime libraries.
1 parent 237258d commit 526f56c

2 files changed

Lines changed: 6 additions & 1 deletion

File tree

Dockerfile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,10 @@ COPY --from=blah2_env /usr/local/lib/libfftw3.so* /usr/local/lib/
138138
COPY --from=blah2_env /usr/local/lib/libfftw3f.so* /usr/local/lib/
139139
COPY --from=blah2_env /usr/local/lib/libfftw3_threads.so* /usr/local/lib/
140140
COPY --from=blah2_env /usr/local/lib/libfftw3f_threads.so* /usr/local/lib/
141+
142+
# Copy OpenBLAS libraries from vcpkg build stage
143+
COPY --from=blah2_env /opt/blah2/lib/vcpkg_installed/*/lib/libopenblas* /usr/local/lib/
144+
141145
RUN ldconfig
142146

143147
# Copy the compiled binary from build stage

lib/vcpkg.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
{
22
"name": "blah2",
33
"version": "1.0.0",
4-
"dependencies": [
4+
"dependencies": [
55
{ "name": "catch2", "version>=": "3.4.0" },
66
{ "name": "rapidjson", "version>=": "1.1.0" },
77
{ "name": "asio", "version>=": "1.28.0" },
88
{ "name": "cpp-httplib", "version>=": "0.12.2" },
9+
{ "name": "openblas", "version>=": "0.3.0" },
910
{ "name": "armadillo", "version>=": "12.0.1" },
1011
{ "name": "ryml", "version>=": "0.5.0" }
1112
],

0 commit comments

Comments
 (0)