ariasanovsky/spindle

goals for 0.2.x

Opened this issue · 1 comments

features

  • tensor fusion/multivariate functions
  • impure functions (& and &mut)
  • assess what to pack into kernel typestate w/ traits
    • e.g., dims, rank, crate metadata, compiler flags, thread geometry, ...
  • versatile thread layout
  • device ordinals for CudaSlice initialization
  • fill with const
  • sum/summands
  • map fn w/ range entry
  • refilling an existing slice
  • fn __unlabel(&self) & unsafe fn __relabel(&self)
  • DevSlice::new

ergonomics

  • better display for spindle crates
  • assess the "crate" approach
    • ?compile a kernel.c and FFI the Rust part
    • goal: target different architecture + ?migrate off of experimental ptx ABI

correctness

  • ?does cudarc always 0-initialize
  • use uuid better (e.g., rusqlite feature)
  • feature to use rust ptx_compiler or abi_ptx for kernels

sanitation

  • dump artifacts according to the appropriate environment variables
  • clean out fledgling dbg! and todo! (write tests as needed)
  • [ ] ?smuggle trait const to config/typestate
  • ?refactor TypeDb to use embedded hash map/cache instead of SQL

misc

  • ?bundle smaller Issues here to avoid clutter
  • refactor & test camel/snake case
  • say hi 💘to the candle folks 🫂🤗 <- hugging + face emoji pun
    • improve pun skills

Not a final draft. Some things are hard to put in linear order.

updated workflow for spin macro