OpenGL and GPGPU

trekiej · 8406

trekiej

  • Member
  • ***
    • Posts: 190
    • Karma: +5/-0
on: January 27, 2019, 08:29:13 PM
I was wondering if OpenGL would give a programmer any GPGPU capability.
OpenCL sounds like a good thing to add to Aros.
Looking on the web and finding out that adding OpenCL could be difficult due to driver issues and other things.

Using OpenGL by itself might, a big might, be a way around it.
Does the present driver offer the ability to do GPGPU?



magorium

  • Legendary Member
  • *****
    • Posts: 632
    • Karma: +62/-0
  • Convicted non contributor
Reply #1 on: January 28, 2019, 12:28:41 AM
I was wondering if OpenGL would give a programmer any GPGPU capability.

As stated per wikipedia:
Quote
Any language that allows the code running on the CPU to poll a GPU shader for return values, can create a GPGPU framework.

As of 2016, OpenCL is the dominant open general-purpose GPU computing language, and is an open standard defined by the Khronos Group.[11] OpenCL provides a cross-platform GPGPU platform that additionally supports data parallel compute on CPUs. OpenCL is actively supported on Intel, AMD, Nvidia, and ARM platforms. The Khronos Group is currently involved in the development of SYCL, which has its implementations with ComputeCPP and SYCL STL, the first being developed by Codeplay, and currently only supported in Linux Operating Systems. The second one, being hosted by Khronos Group on GitHub, and possible to be compiled for any modern operating system.

The dominant proprietary framework is Nvidia CUDA.[12] Nvidia launched CUDA in 2006, a software development kit (SDK) and application programming interface (API) that allows using the programming language C to code algorithms for execution on GeForce 8 series and later GPUs.

Or to put it into other words: OpenCL was especially designed for his purpose.

Quote
OpenCL sounds like a good thing to add to Aros.
Not sure why but i take the bait... why do you think that would be a good thing to add to Aros ?

Quote
Looking on the web and finding out that adding OpenCL could be difficult due to driver issues and other things.
Exactly and let's not forget to have to proper hardware (although that shouldn't be a problem in this day and age).

But, not to dwell on that too much have a look at this nice old thread started by HenriCase (excellent explanation in his first post)


Quote
Using OpenGL by itself might, a big might, be a way around it.
I think i misunderstand what you are trying to say there. Using OpenCL might be a way around what exactly ? using (graphic-card) drivers ?

If that was your line of thought then try to read into the subject a little further. OpenCL still requires to communicate with the GPU and thus requires a proper driver.

Quote
Does the present driver offer the ability to do GPGPU?
I'm not sure how up to date AROS' gallium port is with regards to supporting openCL

I'm guessing the next question is going to be about RTX ?  ;D

I rather stick to the custom chipset of an Amiga  :P


paolone

  • Legendary Member
  • *****
    • Posts: 569
    • Karma: +90/-0
Reply #2 on: January 28, 2019, 07:54:23 AM
Gallium3D for AROS is brilliant but quite outdated, as it is the Nvidia 3D driver, which covers all DX9 oriented hardware from Nvidia and extends support to the DX10 Fermi architecture only. I am not sure if later GPUs are still natively working on AROS, but I'd sincerely doubt that. I'd not hope our Gallium3D library can hold OpenCL, whose first releases were somehow contemporary, but not in scope for the AROS port.

To be honest, all these components (MESA, Gallium3D, Nouveau drivers, GMA drivers) need a refresh to extend support to newer technologies and current GPUs. A more modern MESA implemetation should allow porting some version of OpenCL to AROS. The problem, however, would be: why? Is there any AROS software which would gain anything from a OpenCL port? Is there anyone willing to port OpenCL-based programs to AROS?


trekiej

  • Member
  • ***
    • Posts: 190
    • Karma: +5/-0
Reply #3 on: January 28, 2019, 03:58:33 PM
I am hoping that it would put Aros, Amiga OS4.X and others on the radar more.
It appears that working with Aros SMP would be more ideal.
It is not like there is a race to build the first computer.

Does the Open Source Driver make all functions of a GPU visible to the programmer?
With used Tesla cards at lower prices, it would be nice to add them to the list of things one could do with Aros.

Maybe I need to learn exactly what is visible to the programmer. You have DirectX, OpenGL, and now OpenCL capable cards.
What does the front door look like? What makes a DirectX card a directX card?

How does the Closed Source Nature of the chip-set and it drivers affect Aros?
How Parallel is OpenGL? Is someone able to do OpenCL like math wit it if I am not able to use OpenCL?
For example, if I wanted to make a program that simulates air going over an air foil, could OpenGL do that?
An 8 Core CPU could as well.

I guess I am a solution looking for a problem.



trekiej

  • Member
  • ***
    • Posts: 190
    • Karma: +5/-0
Reply #4 on: January 28, 2019, 04:06:48 PM
Checking out the link, that was in 2012.
That will answer my question for the most part, if not all.
It is great to know that.




PurpleMelbourne

  • Newbie
  • *
    • Posts: 31
    • Karma: +0/-0
Reply #5 on: January 28, 2019, 04:35:17 PM
I guess I am a solution looking for a problem.
I for one am loving to hear your musings. Its better that we brainstorm ideas which are not finished instead of only coming up with completed ideas. Otherwise how can we collaborate if we keep all our half baked ones to ourselves. Even though you don't have the full answer, perhaps the first part is enough to inspire someone else to have the other half of the problem.

Keep it up! Amiga needs you!  :)



trekiej

  • Member
  • ***
    • Posts: 190
    • Karma: +5/-0
Reply #6 on: January 28, 2019, 05:30:10 PM
How else can we push forward?



PurpleMelbourne

  • Newbie
  • *
    • Posts: 31
    • Karma: +0/-0
Reply #7 on: January 29, 2019, 07:10:08 AM
How else can we push forward?
Exactly!  :)



NinjaCowboy

  • Junior Member
  • **
    • Posts: 66
    • Karma: +18/-0
Reply #8 on: January 29, 2019, 04:55:13 PM
Well, support for newer graphics chips would certainly be worth it to update Galium3D. Also, the ability to run modern games that use OpenGL 4.x.



x-vision

  • Junior Member
  • **
    • Posts: 50
    • Karma: +5/-2
Reply #9 on: January 29, 2019, 05:32:40 PM

To be honest, all these components (MESA, Gallium3D, Nouveau drivers, GMA drivers) need a refresh to extend support to newer technologies and current GPUs. A more modern MESA implemetation should allow porting some version of OpenCL to AROS. The problem, however, would be: why? Is there any AROS software which would gain anything from a OpenCL port? Is there anyone willing to port OpenCL-based programs to AROS?

¿Blender? just as a start. But having this technlogies wuld attract many more users and developers. This is not an egg-chicken game. You have to give an egg first, then the chickens will come for sure and just because of it



trekiej

  • Member
  • ***
    • Posts: 190
    • Karma: +5/-0
Reply #10 on: January 29, 2019, 07:09:39 PM
Amiga OS 4.x has AMD and Aros has Nvidia.
I guess that there has to be a way for those two cards to end up on each platform.

Yet OpenCL could end up on an X5000 through Linux.
With some work even on Aros.



The_Reaper

  • Newbie
  • *
    • Posts: 41
    • Karma: +0/-0
    • Hitech The Amiga Team
Reply #11 on: January 31, 2019, 03:22:44 PM
Being able to make the i386 version compatible and having more users,
having more users there are more developers.
And a triumphant way to start in the x86-64 version.
then two teams would be made the i386 or the x86-64 version.
at the developer's choice.



RidgeOne

  • Newbie
  • *
    • Posts: 4
    • Karma: +0/-0
Reply #12 on: February 01, 2019, 12:59:00 AM
This might be of interest to your discussion.

https://www.youtube.com/watch?v=qtLdi1IKhd8



trekiej

  • Member
  • ***
    • Posts: 190
    • Karma: +5/-0
Reply #13 on: February 03, 2019, 08:41:23 PM



salvatore

  • Guest
Reply #14 on: April 22, 2019, 06:20:16 AM
I have a geforce 6200 I can also run doom 3 without problems, wawa said that kalamatee has updated gallium to version v19 but it is not known if it will be brought to abiv0 given the progress of abiv1 which I understand to be well advanced