Commit graph

2,784 commits

Author SHA1 Message Date
George Hotz
2e3048fc57
Revert "improve full_graph_rewrite matchers for speed (#7431)" (#7434)
This reverts commit 996152d2de.
2024-10-31 16:16:47 +08:00
George Hotz
996152d2de
improve full_graph_rewrite matchers for speed (#7431)
* remove finalize [pr]

* early transcendental

* fix tests

* load store indexing runs with devectorize

* move delete_redundant_gates

* ptx has to wait for the mask to move
2024-10-31 16:13:11 +08:00
George Hotz
17c9a9fde4
pm_render [pr] (#7430)
* pm_render [pr]

* test fixes

* use gep, not src

* ptx only symbolic, not sym

* move cast rules
2024-10-31 15:04:50 +08:00
George Hotz
e446e95974
enforce ctx is called ctx [pr] (#7424)
* enforce ctx is called ctx [pr]

* fix bug and use has_ctx

* inspect signature

* assert

* no slow asserts

* now we can support contextual reduce
2024-10-31 11:39:19 +08:00
chenyu
0739895b4d
tiny clena up pow2if and payne_hanek_reduction (#7423) 2024-10-30 22:22:48 -04:00
chenyu
118dd7721f
clean up transcendental.rintk [pr] (#7422)
added unit tests and updated the comment. it's rounding away from 0 for negatives
2024-10-30 20:37:28 -04:00
chenyu
fb694a63eb
Tensor.erf (#7419)
the same one used in onnx and the one in bert.
2024-10-30 18:12:28 -04:00
qazal
e955aa1bee
hotfix: process replay (#7418) 2024-10-30 22:45:40 +02:00
qazal
1a2ee37dd3
hotfix: remove redundant test_schedules [pr] (#7412) 2024-10-31 01:10:31 +08:00
George Hotz
7039fba406
move indexing first (#7409)
* move indexing first [pr]

* no create gate

* fix create_gate

* fix load/store folding

* fix index folding

* remove comment, no process replay
2024-10-31 00:50:35 +08:00
George Hotz
133fe81cc5
Revert "Revert "move up migrate + new gated fold (#7403)" (#7406)" (#7407)
* Revert "Revert "move up migrate + new gated fold (#7403)" (#7406)"

This reverts commit ea5654a9bc.

* test padded in emulation too

* bring back early folding
2024-10-30 23:25:45 +08:00
chenyu
ea5654a9bc
Revert "move up migrate + new gated fold (#7403)" (#7406)
This reverts commit adccfade7f.
2024-10-30 23:02:18 +08:00
George Hotz
adccfade7f
move up migrate + new gated fold (#7403)
* move up migrate + new gated fold [pr]

* vcount for const ptr

* move those rules there

* fix openpilot
2024-10-30 22:14:01 +08:00
chenyu
16e60d25b9
move polyN to helper [pr] (#7405)
also move `eval_uop` to `test.helpers`
2024-10-30 10:09:57 -04:00
George Hotz
f3bd5cbf78
simplest migration of indexing [pr] (#7402)
* simplest migration of indexing [pr]

* fix locals/barrier
2024-10-30 20:58:18 +08:00
George Hotz
ee9ef93617
delete old rules [pr] (#7400) 2024-10-30 19:45:04 +08:00
George Hotz
76a41a1083
don't compare with pointer dtype (#7394)
* don't compare with pointer dtype

* more cleanup

* images are pointers

* handle IMAGE better

* cleaner test_image

* this work

* pr match

* cleanup
2024-10-30 17:48:27 +08:00
George Hotz
4e2895f8d2
safe changes from new dtype branch [pr] (#7397)
* safe changes from new dtype branch [pr]

* only image test on GPU
2024-10-30 17:18:48 +08:00
George Hotz
27995a2a04
vcount + cleanups (#7393)
* Revert "Revert "Restore vcount [pr] (#7390)" (#7392)"

This reverts commit 4ca53db604.

* ugh bugfix [pr]

* uops_to_dtypes function

* fixups

* varnames

* fix mypy

* just 4,8

* tests
2024-10-30 12:50:15 +08:00
George Hotz
4ca53db604
Revert "Restore vcount [pr] (#7390)" (#7392)
This reverts commit 1058f9c9ff.
2024-10-30 11:40:25 +08:00
George Hotz
1058f9c9ff
Restore vcount [pr] (#7390)
* Revert "Revert "add vcount to PtrDtype (#7388)""

This reverts commit 399a5219dd.

* Revert "Revert "add tests to vcount stuff [pr] (#7389)""

This reverts commit cc8d6dbdf3.

* no ptr
2024-10-30 11:27:55 +08:00
George Hotz
cc8d6dbdf3 Revert "add tests to vcount stuff [pr] (#7389)"
This reverts commit 1b7084899b.
2024-10-30 10:56:49 +08:00
George Hotz
1b7084899b
add tests to vcount stuff [pr] (#7389) 2024-10-30 10:54:54 +08:00
chenyu
f389e1a8a0
test more special values for sin/cos/tan [pr] (#7386) 2024-10-29 21:13:37 -04:00
chenyu
6bf38c35e5
clean up transcendental frexp [pr] (#7384)
also added some unit tests for frexp
2024-10-29 18:51:37 -04:00
chenyu
d3c192b056
Device method cleanup [pr] (#7375) 2024-10-29 12:49:47 -04:00
qazal
51c0c8d27e
cachable small graph rewrite (#7371) 2024-10-29 22:28:13 +08:00
George Hotz
2cfc7b6695
Index everywhere 2 (#7363)
* indexing everywhere [pr]

* fix tests
2024-10-29 19:29:40 +08:00
qazal
7149eabb34
assert set equality in TestTensorMetadata [pr] (#7364) 2024-10-29 19:29:29 +08:00
qazal
0ebdb136e8
revert metadata with graph_rewrite (#7353) (#7362)
This reverts commit 540e4179e7.
2024-10-29 19:16:31 +08:00
George Hotz
0af1212164
use assertEqual with new style uops [pr] (#7360) 2024-10-29 18:43:21 +08:00
George Hotz
572499c71a
add indexing to ops_python (#7358)
* add indexing to ops_python

* fix image
2024-10-29 18:11:03 +08:00
qazal
540e4179e7
global UOp to Metadata mapping + inverse DEBUG=2 metadata order [pr] (#7353)
* add ctx.buf_metadata [pr]

* revert metadata insertion order

* lint rename
2024-10-29 17:12:00 +08:00
George Hotz
2fdfcffe4c
improve ci speed [pr] (#7357) 2024-10-29 17:00:35 +08:00
George Hotz
b647fa7514
rename MathTraits to maximum [pr] (#7356) 2024-10-29 16:43:04 +08:00
George Hotz
3989bd2682
idiv + reciprocal [pr] (#7354)
* idiv + reciprocal

* remove upcast from div

* fix docs
2024-10-29 15:54:19 +08:00
George Hotz
d9d4dd6756
faster ci [pr] (#7348) 2024-10-29 14:01:44 +08:00
George Hotz
4cb236a495
index in cstyle (#7328)
* index only in cstyle

* fix prefix dtypes

* fix tests

* global indexing

* Revert "global indexing"

This reverts commit 4d507e8abb.

* fix image

* fix image

* ptx tests

* fix CUDA dtype rendering
2024-10-29 13:06:26 +08:00
George Hotz
4fe1945df6
llvm if load (#7345)
* llvm if load

* unneeded line

* local llvm CI
2024-10-29 11:33:22 +08:00
chenyu
6021bf87f4
unify T = TypeVar("T") (#7342) 2024-10-28 18:43:44 -04:00
chenyu
c398f2467c
test uop mul min/max do not have nan in 0*inf (#7340) 2024-10-28 17:52:01 -04:00
chenyu
0843734927
clean up nan handling in transcendental (#7332)
* clean up nan handling in transcendental

* skip remu crash
2024-10-28 16:21:49 -04:00
Sieds Lykles
75dcd98e79
Fix calculation of vmin and vmax in multiplication when one src is negative and the other src has negative min and positive max (#7333)
Co-authored-by: chenyu <chenyu@fastmail.com>
2024-10-28 16:01:46 -04:00
qazal
e46edc22aa
use unittest helpers in TestTensorMetadata [pr] (#7329)
* use unittest helpers in TestTensorMetadata [pr]

* fix that

* 5 args
2024-10-28 18:38:30 +08:00
chenyu
cb5702f170
tiny cleanup to transcendental xexp2 (#7326)
also added test for exp and log of nan and inf
2024-10-27 21:54:20 -04:00
chenyu
4c855ae692
unit test transcendental helpers (#7325)
added a test to run UOps with const inputs. seems to have issue with both payne_hanek_reduction and cody_waite_reduction
2024-10-27 19:55:00 -04:00
qazal
8d9459f281
always run process replay with contextvars (#7323)
* always run process replay with contextvars [pr]

* not the last two

* extra

* no pr
2024-10-27 20:44:42 +02:00
talati
d4d201d87b
fixing branch condition on UOps.IF in the ptx renderer (#7315)
* fixing branch condition on UOps.IF in the ptx renderer

* ptx works

---------

Co-authored-by: Nick Talati <nick.talati@quantworks.com>
Co-authored-by: qazal <77887910+Qazalin@users.noreply.github.com>
Co-authored-by: qazal <qazal.software@gmail.com>
2024-10-27 14:27:38 +02:00
qazal
a410b46c1d
unskip test_gated_store_with_if [pr] (#7319) 2024-10-27 14:03:12 +02:00
Maximilian Wolf
3c992250d5
Failing test: different behavior on different devices (#7193)
* add minimal failing test

* more tiny makes linter happy

* tinyfy

* no walrus in assert

* a tiny bit simpler

* minimal

* better place, better name, expected failure

* skip devices with correct behavior
2024-10-27 09:53:58 +08:00