This repository was archived by the owner on Jan 13, 2025. It is now read-only.

Description
Currently, portblas uses a number of ifdefs for AdaptiveCpp and enters different code paths in a number of places:
https://github.com/search?q=repo%3Acodeplaysoftware%2FportBLAS+__ADAPTIVECPP__&type=code
From what I can see, one reason for this is group algorithms.
AdaptiveCpp 24.10 has added support for group algorithms in the generic JIT compiler (the other compilation flows already had it), so I believe there should now no longer be a reason to guard group algorithms with sufficiently recent AdaptiveCpp. But there are other ifdefs that I don't quite understand - e.g. what is the issue with the memory pool?
I'd like to find out which of these ifdefs can be removed.
- What was the motivation for these ifdefs apart from group algorithms?
- If I create a PR, would you prefer to keep compatibility with earlier AdaptiveCpp (and hence fall back to the old paths if needed), or would it be fine for you to just say that portBLAS needs at least AdaptiveCpp version 24.10?