Java and GPU … are we nearly there yet?

Поделиться
HTML-код
  • Опубликовано: 3 фев 2025

Комментарии • 14

  • @Rope257
    @Rope257 Год назад +13

    Very happy to see some work in this direction. There have been a bunch of API's I played around with but having a proper set of JDK features for this would be amazing.

  • @MrXv007
    @MrXv007 Год назад +3

    The first question that was asked by someone from the audience is what i have on my mind too. The way Gary Frost describes moving data in and out of the GPU based on automatic code analysis supposes that the whole calculation is one single operation with multiple steps. The data is uploaded to the GPU, calculated trough multiple kernel calls, result downloaded, and data on the GPU discarded.
    What if i have a scenario that accumulates calculations over a longer time period, and never normally does need to move data out of GPU, as it always reuses the already uploaded data. So its not a single operation, but the data resides on the GPU for longer time. When needed, on demand, some of the relevant data is read back from the GPU. But only rarely.
    It cannot be automatically determined after a kernel call, which data should be read back, which data is temporary, as that is the result of user actions. One kernel only updates data residing on the GPU, so from that point there is no result to read back. It will be different code running at different time that actually reads some of the data back.
    I've used Aparapi, sometimes it was better to run the kernel on the CPU instead of the GPU, because the latency of data transfer was less, even if the computation on the GPU was faster.

  • @DaniilBubnov
    @DaniilBubnov Год назад +3

    Quite interesting presentation, highlights a topic not widely discussed. I liked the historic overview of the evolution how java approached the heterogeneous environment and there is obviously good progress! I wonder what comes next🙂

  • @VincentGroenewold
    @VincentGroenewold Год назад +4

    Thanks, very interesting and very much needed. :)

    • @java
      @java  Год назад

      Glad you enjoyed it!

  • @chamanbhenga
    @chamanbhenga Год назад +3

    Which JEP(s) cover the "Code Reflection" used by HAT?

    • @delabassee
      @delabassee Год назад +5

      There's no JEP yet but more information will soon be published including the JVMLS Code Reflection session.

  • @javadeveloper9442
    @javadeveloper9442 Год назад +1

    I am very interested with this

  • @javadeveloper9442
    @javadeveloper9442 Год назад +4

    And it would be helpful to make the calculation on GPU

  • @StefanReich
    @StefanReich Год назад

    5:50 It would be #1 in 2006, not 2012. But still, impressive :)

  • @RuiLopesFR
    @RuiLopesFR Год назад

    What about leaning on WebGPU initiative and linking against Dawn (Google implementation)?
    This would allow Java to use standard cross-platform GPU API

  • @lhxperimental
    @lhxperimental 3 месяца назад

    I have been dabbling in AI/ML code in Python and as much as I respect the work done by researchers using Python, the Python ecosystem is very immature and riddled with bad practices and security nightmares. Flaky builds, projects that have third party git repos as dependencies and they in turn have other repos as repositories. Everything is held in place by hope and prayers. Java is very well placed to take on the GPGPU / Accelerator market. Other players are emerging (other than Nvidia) and they would like to standardize this is where Java can shine. Python is currently filling the void left by absence of any viable alternative.

  • @nesdi6653
    @nesdi6653 8 месяцев назад

    data

  • @KamilSosinski-w9p
    @KamilSosinski-w9p Год назад

    First comment