-
Notifications
You must be signed in to change notification settings - Fork 6.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BLAS/LAPACK Binaries #23
Comments
I looked into this recently, but I do not plan to work on it anymore in the near future, so I provide by findings if anyone wants to continue working on this. First of all, the lapack and blas reference implementation are distributed as a unique source archive [1], so I think it make sense to distribute them as a single vcpkg port. The usage of alternative OpenBLAS implementation is typically handled at loading time by tools such as The initial port prototype is available at : It uses the gfortran (provided by I quickly checked this issue, and it seems to have been thoroughly investigated by the python community:
In particular, I think that the issue can now be partially solved, and the problems still remaining such as file descriptors should not affect a numeric library such as blas/lapack : Another possible option is to link statically the CRT even on triplet that normally link it dynamically, but at the moment I can't fully evaluate the consequences of such a choice. [1] : https://github.com/Reference-LAPACK/lapack |
BLAS/LAPACK and OpenBLAS are separated projects. To avoid further confusion as in #294 (comment) , I suggest to rename this issue to cover just BLAS/LAPACK and eventually open a new one covering just OpenBLAS. |
The reason why I had them together was because they are essentially related projects. In any case, I can do what you are suggesting without a problem. |
Thanks @sarthakcbica ! |
Because vcpkg is lacking a blas/lapack port, this makes many libraries in scientific computing hard to port to vcpkg. I am thinking that why not directly use a prebuild binary from openblas sourceforge repo? Because openblas is C, fortran and asm, all of them are ABI safe for different MSVC versions. This is much simpler. |
This feature can be closed now? |
@KindDragon - yes! thanks to @saedrna for his work. |
* [osx] add support for rosetta When running an x64 vcpkg binary on arm64, we should still have host processor be arm64 * depend on get_host_processor in system_triplet * format * handle default case * include header * Robert CRs
The following PRs are included: * hopefully fix crash in constraints (microsoft#60) * [vcpkg] allow --version to check the version (microsoft#50) * Remove baseline warning (microsoft#27) * [git] always pass autocrlf=false (microsoft#58) * ignore QtCreator CMake project files (microsoft#54) * ignore .DS_store files (microsoft#53) * [vcpkg] x-add-version now also checks if the manifest file is properly formatted (microsoft#43) * hopefully fix ci issue microsoft#16773 (microsoft#34) * Add docs to set VCPKG_ROOT to run tests (microsoft#45) * [vcpkg] x-add-version improve speed by calling get_builtin_baseline only once (microsoft#44) * add clang-format version to format-cxxcode (microsoft#41) * [vcpkg] Introduce experimental workaround X_VCPKG_NUGET_ID_PREFIX (microsoft#40) * [supports] Add `native` identifier expression and x-check-support command (microsoft#29) * [metrics] Split reporting of installs into name:triplet (microsoft#39) * [vcpkg] Improve error when accessing missing feature (microsoft#38) * [vcpkg] Allow shallow git registries (microsoft#37) * Disable git autocrlf when archiving tree (microsoft#36) * Use only named packages from extra registries (microsoft#35) * [registries] add metrics (microsoft#30) * Add vcpkg policy cmake helper port support (microsoft#17) * [osx] add support for rosetta (microsoft#23) * don't build tls12-download unless it's needed (microsoft#33) * Add new telemetry points for versioning (microsoft#21) * add cmake_minimum_required to vcpkg_tags (microsoft#25) * [x-add-versions] Perform atomic replacement of versioning files (microsoft#28) * [tools] support gsutil (microsoft#19) * add CUDA 11.1 and 11.2 to KEEP_ENV_VARS defaults (microsoft#26) * Add finite timeout on CURL metrics endpoint. (microsoft#22) * fix UB in make_error_code(utf8_errc) (microsoft#18)
Fix protobuf warning on MacOS
Transition to IDLE changed and Unit Test extended
Libraries taking advantage of these would be great!
The text was updated successfully, but these errors were encountered: