Difference between revisions of "BeagleBoard/GSoC/2021ProposalGPGPU"

From eLinux.org
Jump to: navigation, search
(ProposalTemplate)
(ProposalTemplate)
Line 7: Line 7:
 
About
 
About
 
''Student'': [https://elinux.org/User:Steven100]<br>
 
''Student'': [https://elinux.org/User:Steven100]<br>
''Mentors'': [http://elinux.org/User:Hunyue Yau]?<br>
+
''Mentors'': Hunyue Yau?<br>
 
''Code'': ...<br>
 
''Code'': ...<br>
 
''Wiki'': https://elinux.org/BeagleBoard/GSoC/2021ProposalGPGPU<br>
 
''Wiki'': https://elinux.org/BeagleBoard/GSoC/2021ProposalGPGPU<br>

Revision as of 22:53, 26 March 2021


ProposalTemplate

{{#ev:youtube|Jl3sUq2WwcY||right|BeagleLogic}} About Student: [1]
Mentors: Hunyue Yau?
Code: ...
Wiki: https://elinux.org/BeagleBoard/GSoC/2021ProposalGPGPU
GSoC: ...

Status

This project is currently just a proposal.

Proposal

Please complete the requirements listed on the ideas page and fill out this template.

About you

IRC: steven100
Github: StevenSchuerstedt
School: Karlsruhe Institute of Technology
Country: Germany
Primary language (We have mentors who speak multiple languages): German, English
Typical work hours (We have mentors in various time zones): 8AM-5PM US Eastern
Previous GSoC participation: Tell us why you want to participate in GSoC here. Also, provide list of URLs for any previous GSoC participation with any organizations.

About your project

Project name: GPGPU with OpenGL ES

Description

The beagleboard ARM A8 Processor has an integrated graphics accelerator from PowerVR (SGX530 or 550). As the name implies this chip is mainly used and built for graphics rendering, but as the time shows there exist alot of other applications that profit from the parallel nature of graphic chips, like deep learning, bitcoin mining or analyzing DNA sequences. This is called GPGPU (general purpose computations on graphic processing units) and is done with api's like OpenCL or CUDA. The PowerVR SGX only supports the OpenGL ES specification (but there also exist a propiertary openCL driver from IT https://university.imgtec.com/fun-with-beagle-video/ ??), this api is heavily targeted towards graphics rendering, but can also be exploited for general purpose computations. The goal of this project is, to show how to use the mostly unused graphics accelerator chip for general purpose computations using the OpenGL ES api. General computations could be convolution or matrix multiplication. For this project we target the AM335x family of beagleboards (pocketbeagle), why??

Timeline

Provide a development timeline with a milestone each of the 11 weeks and any pre-work. (A realistic timeline is critical to our selection process.)

Mar 29 Applications open, Students register with GSoC, work on proposal with mentors
Apr 13 Proposal complete, Submitted to https://summerofcode.withgoogle.com
May 17 Proposal accepted or rejected
Jun 07 Pre-work complete, Coding officially begins!
Jun 17 setup OpenGL ES drivers for beagleboard, Introductory YouTube video
June 24 create matrix multiplication sample program
June 30 create convolution sample program
July 12 18:00 UTC measure timings between CPU / GPU , Mentors and students can begin submitting Phase 1 evaluations
July 16 18:00 UTC Phase 1 Evaluation deadline
July 23 create tutorial on elinux how to do to GPGPU (is this a good place?)
July 30 Milestone #6
Aug 06 Milestone #7
August 10 Milestone #8, Completion YouTube video
August 16 - 26 18:00 UTC Final week: Students submit their final work product and their final mentor evaluation
August 23 - 30 18:00 UTC Mentors submit final student evaluations

Experience and approach

In 5-15 sentences, convince us you will be able to successfully complete your project in the timeline you have described.

Contingency

What will you do if you get stuck on your project and your mentor isn’t around?

Benefit

If successfully completed, what will its impact be on the BeagleBoard.org community? Include quotes from BeagleBoard.org community members who can be found on http://beagleboard.org/discuss and http://bbb.io/gsocchat.

Misc

Please complete the requirements listed on the ideas page. Provide link to pull request.

Suggestions

Is there anything else we should have asked you?