nimlgen and GitHub
fb96394ff5
auto-select available compilers ( #12094 )
...
* device: auto select compilers
* fix
* metal+opencl
* nv/cuda
* test without ptx
* ptx
* fix tests
* fix
* fix test
* rename
* test + cleaner
* xx
* ops
* better test
* win?
* um?
* types
* debug
* win??
* sep rung
* wtf?
* debug
* skip win
* revert this
* types
2025-09-10 19:52:01 +03:00
nimlgen and GitHub
75c2c42def
suppress exceptions only during finalization ( #11451 )
...
* suppress exceptions only during finalization
* fix
* fix typing
* fix more warns
* fix
* better?
* Revert "better?"
This reverts commit a068aa5793 .
* mm?
* no as e
2025-07-31 13:57:12 +03:00
nimlgen and GitHub
bf12041910
hcq: mapping of cpu to all hcq devices ( #11354 )
...
* hcq: mapping of cpu to all hcq devices
* fix kfd
* nv
* simpler
* cleaner
* correct skip
* fix ifaces
* system fixes
* mypy
2025-07-24 12:52:38 +03:00
nimlgen and GitHub
dd6a2d432f
hcq: default timestamp metrics is ns ( #11295 )
2025-07-21 12:56:30 +03:00
chenyu and GitHub
54924f9969
type remove Union and Optional [pr] ( #11283 )
...
use `|` for consistency
2025-07-19 14:05:52 -04:00
nimlgen and GitHub
9a88bd841c
hcq: refactor into peer_groups ( #11277 )
...
* hcq: refactor into peer_groups
* fix fors
* fixes
* ooops
* mypy
* tiny fixes
2025-07-18 16:34:18 +03:00
nimlgen and GitHub
cfb229473f
hcq: refactor buffer mapping ( #11271 )
...
* hcq: refactor buffer mapping
* fix
* fix mypy
2025-07-17 15:16:49 +03:00
nimlgen and GitHub
756ba1a5f9
nv: support ampere in nvpci ( #11230 )
2025-07-14 15:35:44 +03:00
nimlgen and GitHub
55c54d9745
nv: sync after gpfifo setup ( #11209 )
2025-07-13 14:40:11 +03:00
nimlgen and GitHub
ea7f2f779c
hcq: p2p nv-amd ( #11195 )
...
* hcq: p2p between diff devices
* fix
2025-07-12 18:53:34 +03:00
nimlgen and GitHub
f9e4c4e57a
nv: nvpci blackwell support ( #11127 )
...
* nv: start 5090
* gsp init 5090
* mmu
* works
* after merge
* clenaer
* rwk
* x
* fx
* finish?
* fix
* unrelated
* fix
* commenbt
2025-07-11 17:02:09 +03:00
nimlgen and GitHub
581397110f
nv: use classes in GSP_IP ( #11163 )
2025-07-10 17:47:12 +03:00
nimlgen and GitHub
705de6b8a6
nv: parse sizes of ctx buffers ( #11161 )
2025-07-10 17:46:48 +03:00
nimlgen and GitHub
9a573a1d99
nv: finalize nvdev ( #11117 )
...
* nv: finalize nvdev
* typo
2025-07-07 16:31:59 +03:00
nimlgen and GitHub
fa59c05282
nv: import flags from system ( #11115 )
...
* nv: import flags from system
* not used
2025-07-07 14:46:49 +03:00
nimlgen and GitHub
b73e89110e
nv: align allocations for perf ( #11114 )
2025-07-06 22:32:11 +03:00
nimlgen and GitHub
9ea7deb515
hcq: select_iface shared ( #11033 )
...
* hcq: select_iface shared
* errs
* sorry
* upprt
2025-06-30 21:12:39 +03:00
nimlgen and GitHub
1c45b9f7fb
start nvpci ( #10521 )
...
* start nvpci
* talk to fsp
* boot args
* riscv core bootted
* q
* agen
* got gsp init msg
* some fixes
* set registry, stuck aft lockdown(
* start ga/ad port
* gsp init on ada
* more classes allocated
* more
* mm
* fixes and progress
* no huge pages for now
* mm seems workin, but switch to 512mb page for simplicity
* working state
* not cleaned
* claned
* nvd=1
* start gr ctx
* compute
* clean 1
* cleanup 2
* cleanup 3
* cleaner 4
* cleaner 6
* add iface to nv
* save before reboot
* merged into NV
* moveout mm
* post merge
* cleaner 7
* merge and rebase
* pciiface abstraction + reset
* download fw from web
* print logs
* minor changes + p2p
* cleaner 8
* cleaner 9
* cleaner 10
* delete
* delete this as well
* linter 1
* oops
* priv_client -> priv_root
* fix mypy
* mypy?
* mypy?
* small changes
* shorter
* ops
* remove this
* do not allocate paddr for reserve
* nodiff
* unified script
* ops
* dif ver
* add lock
* setup
2025-06-25 00:37:34 +03:00
nimlgen and GitHub
5202970feb
system: move memory_barrier to System ( #10948 )
...
* system: move memory_barrier to System
* fixed
2025-06-24 11:09:43 +03:00
nimlgen and GitHub
eceb7a00d2
nv: rename iface mem functions ( #10931 )
2025-06-23 16:34:51 +03:00
nimlgen and GitHub
36536ef6f0
nv: minor changes from nvpci ( #10918 )
2025-06-22 18:04:39 +03:00
nimlgen and GitHub
c83fdc50d1
nv: driver iface ( #10895 )
...
* nv: driver iface
* fixes
* ops
* not used anymore
* fix mypy
* too long
* fix
* fixed
* mypy
* ugh, it's misc
* rename to NVK
2025-06-20 22:36:08 +03:00
George Hotz and GitHub
67a1c92fc0
remove del spam from CI ( #10699 )
...
* remove del spam from CI
* more
* preconstruct default buffer spec
* ignore those errors
* check exception
* more exception check
* skip stuff
2025-06-08 10:14:30 -07:00
nimlgen and GitHub
85cea23557
nv: original bw qmd ( #10672 )
...
* nv: original bw qmd
* forgot
2025-06-07 01:43:22 +03:00
nimlgen and GitHub
346b8542da
nv: fix inval from gpu_get_id_info_v2 ( #10670 )
2025-06-07 00:54:32 +03:00
nimlgen and GitHub
88c5864bf3
nv: do not hardcode sass version ( #10513 )
2025-05-25 22:41:15 +03:00
nimlgen and GitHub
d90ddcc365
nv: blackwell support ( #10487 )
...
* nv: blackwell support
* fixes
* hm
* h
* fixes
* mypy
* xx
* yy
* arr
* revert
* oops
* unrelated
2025-05-24 18:23:53 +03:00
nimlgen and GitHub
c472ab636c
nv: use regcount from meta ( #10503 )
2025-05-24 14:14:33 +03:00
nimlgen and GitHub
035dffb00c
nv: refactor qmd from ctypes ( #10459 )
...
* nv: refactor qmd from ctypes
* shorter
* imports
* x
* fix prefetch
2025-05-22 17:20:11 +03:00
George Hotz and GitHub
411392dfb7
move files into uop dir ( #10399 )
...
* move files into uop dir [pr]
* tinygrad.uop is a thing
* fix uop docs, no pr
* fix viz
2025-05-18 11:38:28 -07:00
nimlgen and GitHub
a825608dc2
hcq: fix progs' __del__ when shutdown ( #10341 )
...
* debug ci
* better?
* and mute this?
* revrt that
2025-05-15 23:26:48 +03:00
nimlgen and GitHub
7573c0ef4e
amd,nv: use .cpu_view() in bind ( #10131 )
2025-05-01 17:46:12 +03:00
nimlgen and GitHub
0e1beaf44f
nv: align copies + better test ( #10118 )
2025-04-30 20:09:53 +03:00
nimlgen and GitHub
2ec3b722e2
nv: fix copies larger than 4g ( #10117 )
2025-04-30 18:43:17 +03:00
nimlgen and GitHub
5c7d004da5
hcq: refactor int ptrs to hcqbuffers ( #10105 )
...
* hcq: refactor int ptrs to hcqbuffers
* more refactors
* linter
* use in allocator
* test fiz
* fx
* ops
* final?
* simpler
* keep this for now
2025-04-30 00:12:18 +03:00
nimlgen and GitHub
e08270c1ba
nv: fix program init for no-args kernels ( #10058 )
2025-04-26 18:08:53 +03:00
nimlgen and GitHub
db51133537
rename HWInterface -> FileIOInterface ( #9989 )
...
* rename HWInterface -> FileIOInterface
* ugh
2025-04-22 22:18:57 +03:00
nimlgen and GitHub
bd580d8ea4
hcq: use mmio interface in nv ( #9986 )
...
* hcq: start mmio interface
* allow double cast
* revert
* faster?
* simpler, not needed more now
* dd
* types
* fix
2025-04-22 21:58:12 +03:00
uuuvn and GitHub
c631c72f22
HCQ: Increment timeline signal before submitting ( #9550 )
...
`AMDComputeQueue.__del__` frees `hw_page` which is safe because
`AMDAllocator._free` does `self.dev.synchronize()` which is supposed
to wait for execution of IB to finish, however that doesn't happen if
AMDComputeQueue is dropped right after submit before timeline signal is
incremented, which it is in most places leading to a race if .bind() is
also used (required for multi-xcc because bug in mec fw treats all
PACKET3_PRED_EXECs outside IBs as if they had EXEC_COUNT of zero).
2025-03-23 18:30:38 +07:00
nimlgen and GitHub
c4c29c8acc
nv: parse elf attrs ( #9275 )
...
* better
* hm
* hm
* fixed
2025-02-26 23:21:57 +03:00
nimlgen and GitHub
70db8c3003
hcq: dyn alloc signals ( #9238 )
...
* hcq: dyn alloc signals
* types and uniqueue devs
* typing
* mypy
* mypy one more time
* test
* make fds to not intersect in mockgpu between drivers
2025-02-25 17:22:24 +03:00
d2ff55e9c6
OSX GPUOcelot ( #8209 )
...
* add patches
* add osx test in ci
* macos specific uvm, gpfifo mask
* only do that for now
* Revert "add patches"
This reverts commit 80d3112a57 .
* use fork for now
* workflow only one worker
* merge osxtests with tests
* Revert "merge osxtests with tests"
This reverts commit 3461c8f46c .
* macos pagesize 16384
---------
Co-authored-by: nimlgen <[email protected] >
Co-authored-by: George Hotz <[email protected] >
2025-02-13 12:24:29 +08:00
nimlgen and GitHub
101652a55c
hcq: thread fence ( #8991 )
...
* amd: thread fence
* nv
2025-02-11 18:09:37 +03:00
nimlgen and GitHub
166670a2f2
nv: fill grid/block sizes ( #9025 )
2025-02-11 16:30:30 +03:00
nimlgen and GitHub
fa90079370
amd: reallocate scratch ( #8872 )
...
* amd: reallocate scratch
* use it
* oops
* allocate default
* mypy
* ops
* address realloc from none better
* types correct
* this better
* ops
* rm
2025-02-03 23:21:37 +03:00
nimlgen and GitHub
d224d0ed7f
nv: fix fault info ( #8587 )
...
* nv: fix fault info
* and emu for amd
* skip if not mock
2025-01-13 14:38:43 +03:00
ab3ac2b58d
hw interface abstraction ( #8524 )
...
* use HWInterface in autogen
* mockgpu
* HWInterface
* more HWInterface
* fix
* fix
* old code
* fix
* implicit field definition
* add offset check to mockgpu too
* refactor
* forgot to pass flags + read rewrite
* test
* play with vfio
* nv: this should be kept
* try this
* vfio
* rm overwrite=True
* linetr
* do not reinit kfd
* minor
* mypy
* mock
* init them once
---------
Co-authored-by: patrini32 <[email protected] >
2025-01-07 18:18:28 +03:00
chenyu and GitHub
6c639dee5c
more informative kernel opt error messages [pr] ( #8487 )
2025-01-03 14:29:36 -05:00
nimlgen and GitHub
5d37d33fc5
update typing.Optional to 3.10 for hcq ( #8479 )
2025-01-03 16:20:49 +03:00
nimlgen and GitHub
a562ee2c6e
BumpAllocator rename start -> base ( #8415 )
2024-12-25 23:12:55 +03:00