I'm interested in working on the GPGPU project. I've done GPGPU work
before, which you can see here <https://github.com/vazgriz/VkColors>. That
program is written using the Vulkan API, however I have some experience
My questions are:
Can the example programs have some kind of graphical output? Will I be
allowed to use the Beagle Board's video capabilities?
Can you clarify what do you mean by this? GLES uses the video capability? Are
you referring to sample programs that show the output on a screen? When I
posted the idea, what I had in mind was an example to show how the GLES
hardware can be used in a headless case for computation. Depending on the
version of the GLES drivers, integration with X11 may not be working. So the
lowest common denominator is to use the direct output EGL and render to a "off
screen" texture. The off screen texture part is nice to have but can be worked
around in HW (i.e. it can be made invisible if the video hw is muxed out).
Consider a possible flow:
- 2D data is captured (say from a USB camera)
- 2D data is loaded as a texture
- Convolve it with a kernel
- The 2D data is retrieve and written out
Prehaps another variant is 1D data going through a similar flow.
It would be nice to be able to repeat the load data to texture, convolve, and
retrieve in a loop for benchmarking.
Do Beagle Boards support Vulkan?
No. The drivers are limited to GLES 2.
Additionally, I don't think the suggested tasks would take an entire summer
to write. Should I also include other GPGPU tasks in my proposal?
I suggest addressing these points and possible others:
- Value of being able to leverage the GPU even with the limited proprietary
drivers (GLES 2 support only).
- How do you plan to deal with getting the GLES drivers? Please search the
Beagle mailling list for reports of various issues.
- Prehaps identifying what is the threshold of processing that is needed to
make the GPU useful for computation. Put it another way, the transfers to and
from the GPU are not cheap so the GPU needs to do amount of work to make it
worthwhile compared to other accelerations on the BeagleBone. The threshold
may be in terms of any combinations of datasize, computations, and prehaps
other factors. At the end of the summer, this should just be a dump of various
shader codes. It should also show this is useful.
I monitor the #beagle-gsoc channel. Discussions there may be helpful.