The ideas here go back a long way. As mentioned on Wikipedia, the Polly project for LLVM uses this approach.
There is also work for MLIR to use the polyhedral model (https://github.com/tensorflow/mlir/blob/master/g3doc/Rationa...).
The ideas here go back a long way. As mentioned on Wikipedia, the Polly project for LLVM uses this approach.
There is also work for MLIR to use the polyhedral model (https://github.com/tensorflow/mlir/blob/master/g3doc/Rationa...).
I'm very excited about the potential for writing GPU code from whatever high level language is convenient. (Which will not be WSL, by the way).
Polyhedral development in LLVM stagnated a while ago, maybe we find the people and time to actually land the PolyhedralValueInfo (see for example this talk: https://www.youtube.com/watch?v=xSA0XLYJ-G0).
A core problem of the polyhedral approach, is that the thing that makes it so appealing (it being expressive enough to enable the many interesting program transformations), is costly for large programs making, the overall optimisation process and hence the compiler hard to scale. Naturally, this difficulty makes for interesting research problems.
[2] https://pliss2019.github.io/albert_cohen_slides.pdf