Code

History

Commits on move/encoder_kernel to dev279
  1. use cublaslt, which fuses bias, and also use tf32 when your GPU supports it (#98)Andrej committed 2 years ago8822e78
  2. div_ceilErik Schultheis committed 2 years agoe048825
  3. online softmaxErik Schultheis committed 2 years ago8e87aac
  4. vector loadsErik Schultheis committed 2 years agode98a9a
  5. recalculate instead of memory round-tripErik Schultheis committed 2 years agobaba3cf
  6. Include a parallel kernal of softmax_onlinelancer committed 2 years ago69d0e5b
  7. Include a parallel kernal of softmax_onlinelancer committed 2 years agoca1e5ee
  8. cooperative groups and fused scale kernelErik Schultheis committed 2 years ago5f99fb3
  9. Improve the efficiencylancer committed 2 years agod6bcc12
  10. Improve the efficiencylancer committed 2 years ago00010c7
  11. ceildiv in layernormAndrej Karpathy committed 2 years ago00b9fda
  12. make sure we also test correctness of mean and rstd and do it all block sizesAndrej Karpathy committed 2 years ago089cd5f
  13. small edits to comments and variablesAndrej Karpathy committed 2 years agof28613e
  14. Merge branch 'layer-norm' of https://github.com/ngc92/llm.c into ngc92-layer-normAndrej Karpathy committed 2 years ago2553518
  15. optionally generate mean and rstdErik Schultheis committed 2 years ago4e91362
  16. Include the online softmax CPU code (from the paper "Online normalizer calculation for softmax") and native port to GPU kernel. Both the CPU and GPU kernels' correctness are verified by executing the script.lancer committed 2 years agof524a90
  17. make gelu constant be a #define, speeds up the kernel by 1% or soAndrej Karpathy committed 2 years agof26cf00
  18. fixed block size and improved load op hintErik Schultheis committed 2 years agoafddb1a
  19. fully fused layer-norm kernelErik Schultheis committed 2 years ago466723b
  20. fix error in small typos in matmul_forward.culancer committed 2 years ago68d2ce0
  21. Merge pull request #38 from lancerts/fix_matmulAndrej committed 2 years ago9f5069d
  22. the full forward pass of GPT-2 in one file of pure CUDAAndrej Karpathy committed 2 years ago80f52e5
  23. ok crossentropy is fairly ez, just have to be careful with logs of negative numbers in debug tests. so this should be all the layers nowAndrej Karpathy committed 2 years agod8e2a36
  24. sorry there should be no mallocs inside these functions, have to pass in buffer memory from outside. getting tiredAndrej Karpathy committed 2 years ago46ee0a3
  25. ok attention is now optimized too, by 20X, nice. actually this one was really painful, i had to make sure all the cuBLAS calls take all the right arguments and deal with the fact that cuBLAS is column major instead of row major. i go for nap nowAndrej Karpathy committed 2 years ago919ae1f
  26. fix the consistency of the transpose notationlancer committed 2 years agofbd679a
  27. intra-warp reductions and inter-warp shared memory reductions for B,T,C parallelism of softmax kernel niceAndrej Karpathy committed 2 years ago8386e53
  28. add softmax forward, both a naive parallel over B,T version, and a more optimized parallel over B,T,C version using shared memory for reductionsAndrej Karpathy committed 2 years agoc29d70a
  29. Merge pull request #33 from lancerts/fix_M_PI_undefinedAndrej committed 2 years agoea1fad0
  30. add flash attention, but a naive implementation there ofAndrej Karpathy committed 2 years agobb4f04b
  31. amendlancer committed 2 years ago3a4d783
  32. fix error: identifier M_PI is undefinedlancer committed 2 years ago73c9291
  33. naive attention kernel only parallelizing over batch,time,heads. have to speed this up a lotAndrej Karpathy committed 2 years ago03f37cf
  34. might as well push the few kernels that i feel ok about so farAndrej Karpathy committed 2 years ago41d5f56