Web Programming Using the WebGPU API

Benjamin Kenwright

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Today's web-based programming environments has become more multifaceted for accomplishing tasks that go beyond 'browsing' web-pages. The process of developing efficient web-based programs for such a wide array of applications poses a number of challenges to the programming community. Applications possess a number of workload behaviors, ranging from control intensive (e.g., searching, sorting, and parsing) to data intensive (e.g., image processing, simulation and modeling, and data mining). Web-based applications can also be characterized as compute intensive (e.g., iterative methods, numerical methods, and financial modeling), where the overall throughput of the web application is heavily dependent on the computational efficiency of the underlying hardware. Of course, no single architecture is best for running all classes of workloads, and most applications possess a mix of the workload characteristics. For instance, control-intensive applications tend to run faster on the CPU, whereas data-intensive applications tend to run fast on massively parallel architectures (like the GPU), where the same operation is applied to multiple data items concurrently. To extend and support these various workload classes so that browser-based applications wouldn't be hindered, a new generation of API needed to be developed (open the door for developers so that they can access the power of new hardware/technologies). One example of this, is the WebGPU API which exposes the capabilities of GPU hardware for the Web. The course is intended to help you get started with the WebGPU API while understanding both the HOW and WHY behind it works, so you can create your own solutions. This course is designed to teach you the new WebGPU API for graphics and compute techniques without any prior knowledge. All you need is some JavaScript experience and preferably an understanding of basic trigonometry. Whether you're new to graphics and compute development or an old pro, everyone has to start somewhere. Generally, that means starting with the basics which is the focus of this course. You'll learn through simple, easy-to-learn hands-on exercises that help you master the subject. It does this by using multiple task-based activities and discussions which complement and build upon one another.
Original languageEnglish
Title of host publicationSIGGRAPH '23: ACM SIGGRAPH 2023 Courses
PublisherAssociation for Computing Machinery
Pages1-184
Number of pages184
ISBN (Print)9798400701450
DOIs
Publication statusPublished - 24 Jul 2023
EventACM Special Interest Group on Computer Graphics and Interactive Techniques Conference 2023 - Los Angeles, United States
Duration: 6 Aug 202310 Aug 2023
https://s2023.siggraph.org/

Conference

ConferenceACM Special Interest Group on Computer Graphics and Interactive Techniques Conference 2023
Abbreviated titleSIGGRAPH '23
Country/TerritoryUnited States
CityLos Angeles
Period6/08/2310/08/23
Internet address

Keywords

  • graphics
  • webgpu
  • web
  • real-time
  • compute
  • wgsl
  • programming

ASJC Scopus subject areas

  • Human-Computer Interaction
  • Computer Graphics and Computer-Aided Design

Fingerprint

Dive into the research topics of 'Web Programming Using the WebGPU API'. Together they form a unique fingerprint.

Cite this