• Ada 2022 in GNAT

    From Simon Belmont@21:1/5 to All on Thu Dec 8 15:37:15 2022
    Has anyone seen (or willing to type up...) any broad-strokes information about how GNAT (et al) actually plans to implement the parallelization features of Ada 2022? Take advantage of GPU's or just stick to CPU cores, or some kind of binding to OpenMP,
    etc, on Linux vs Windows vs Vworks, etc? I'm mostly just curious and haven't seen any of that in-the-weeds type information floating around, or at least anything that isn't a few years old.

    -sb

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fabien Chouteau@21:1/5 to All on Fri Dec 9 09:07:50 2022
    In the past year or so, we have been working hard assessing and implementing most of these Ada 202x changes (called AIs: Ada Issues in ARG terms). The implementation work and feedback from first users allowed us to identify that a few of these features
    would need additional time and attention. This led us to make a difficult decision - in order to allow for more investigation and to avoid users to start to rely on constructs that may need to change or be replaced, we decided to put on hold the
    implementation of some of the changes in language. Of course, we’re currently engaged with the ARG to discuss these.

    The main set of features that AdaCore and GNAT are putting on hold are related to the support for parallel constructs. While the overall vision is an exciting and promising one, we realized when looking at the state of the art and gathering user
    requirements that there were a lot more aspects to consider on top of those currently addressed by the AIs. Some of these are related to GPGPU (General Purpose GPU) support as well as their future CPU counterparts, and include topics such as control of
    memory transfer, precise allocation of tasks and memory on the hardware layout, target-aware fine tuning options as well as various other parametrization needs. These capabilities happen to be fundamental to obtain actual performance benefits from
    parallel programming, and providing them may require profound changes in the language interface. Consequently, we’re putting all parallel AIs on hold, including support for the Global and Nonblocking aspects beyond the current support in SPARK.

    See https://blog.adacore.com/ada-202x-support-in-gnat

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Simon Belmont@21:1/5 to Fabien Chouteau on Sat Dec 10 12:03:08 2022
    On Friday, December 9, 2022 at 12:07:52 PM UTC-5, Fabien Chouteau wrote:
    See https://blog.adacore.com/ada-202x-support-in-gnat

    That post is over two years old, surely that can't still be the state of things? I'm not sure what it says when the big, marquee item of the newest standard isn't even being actively being worked in the big, marquee compiler.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fabien Chouteau@21:1/5 to Simon Belmont on Tue Dec 13 04:10:43 2022
    On Saturday, December 10, 2022 at 9:03:09 PM UTC+1, Simon Belmont wrote:
    That post is over two years old, surely that can't still be the state of things?

    There has been progress on the Ada2022 support, but no change on that part.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)