Skip to content

Release Tasks

Austin Huang edited this page Jun 16, 2024 · 13 revisions

Current Work-in-progress:

  • CreateArray factory functions
  • Fix CreateKernel so that ComputePipeline is saved, CommandBuffer is ephemeral and not reusable
  • Fix # threads / # workgroups to allow span in x, y, and z directions instead of being 1D
    • allow for flexibility in specifying # threads in each direction so it doesn't assume it's 1:1 with output dimensions
  • allow for more flexible output signatures (multiple buffers? 1 or more params?)
  • physics demo
  • fix projection in rendering demo

P0

  • User testing and feedback
  • Separate template project repo (based on examples/hello-world but without the relative directory pointers)
  • Tutorial program - update
  • Updated slide presentation

P1

  • Implement srush GPU puzzles
  • Implement transformer block
  • Benchmarking suite
  • Optimize Kernels to perform competitively
  • Wrap current test code in a testing framework
  • Implement Sibhoem matmul series in WGSL, optimized matmul
  • Raymarching terminal shader demo

P2

  • Implement an end-to-end architecture - gemma and/or gpt2

Done

  • README
  • Decouple logging from global spdlog instance (soln for now: we've embedded a mini logging library)
  • Multi-shader kernels in a single command buffer
  • Naming convention?
  • Refactor Shape to not be dynamically allocated
  • Builds work for all examples
  • Update deprecated SetDeviceLostCallback --> SetDeviceLostCallbackInfo
Clone this wiki locally