GraphBLAS: Support jitifyer without CMake for MinGW #513
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
These modifications make the JIT compiler work without CMake for me using MinGW compilers (from MSYS2).
I don't know enough about MSVC. So, I left it at using CMake.
With those changes, I see the following timings for the ctests of LAGraph:
Compared to without the patch:
So, it significantly speeds up the first run. (The difference in the respective second runs is probably "random". Maybe caused by different load or alike.)
I believe this should still work on Linux or macOS without any noticeable difference. But I didn't actually try.
Some of these changes are pretty MSYS2-specific (e.g., fixing relocation issues). So, I'd understand if you prefer not to take it (or only take parts?). In that case, I'd propose a similar patch to MSYS2 that could be applied downstream when building GraphBLAS for distribution.
It would be easier though if MSYS2 wouldn't need to maintain a separate patch.