Commit Graph
12336 Commits
Author SHA1 Message Date
Ryan NephandGitHub 608bdd4872 adds broadcasting test cases (#106)
refs: #80, #90, #104, #105
2020-11-12 07:08:28 -08:00
f1d21afe88 Somewhat more generic broadcasting (#105)
* Somewhat more generic broadcasting

* Add TODO

* Set Torch to deterministic in test

Co-authored-by: holonomicjl <[email protected]>
2020-11-11 20:33:00 -08:00
Ryan NephandGitHub 8827a536e0 GPU MaxPool2D.backward(); TinyConvNet train passes (#103)
* no trailing whitespace

* GPU MaxPool2D.backward(); TinyConvNet train passes!

* Fix GPU avgpool.forward() init_val

Doesn’t change result but is simpler.

* Fix MaxPool GPU init_val

Tests only cover random non-negative inputs. This fixes issues if negative inputs are fed to GPU MaxPool2D. Test update to follow.
2020-11-11 07:58:43 -08:00
Marcel BischoffandGitHub a3989f9e18 Supporting .png files in efficientnet (#102)
* to make it work locally

* definitely not working

* Conv2D GPU passes some of the tests

* Conv2D GPU passes more of the tests

* passes some tests and mnist

* removed unecessary code

* Conv2D Backpass works

* wrong test_ops.py

* white space + test backward

* ereased useless code

* removed default argument

* long lines

* works also with 4 channel .png files

* commenting out

* track
2020-11-10 20:06:24 -08:00
geohot d93cd945aa reshape makes copies 2020-11-10 16:18:59 -08:00
geohot d1284fa817 stride tests and i32 2020-11-10 16:10:14 -08:00
Marcel BischoffandGitHub 7bb803c5e0 Conv2D backward on GPU (#93)
* to make it work locally

* definitely not working

* Conv2D GPU passes some of the tests

* Conv2D GPU passes more of the tests

* passes some tests and mnist

* removed unecessary code

* Conv2D Backpass works

* wrong test_ops.py

* white space + test backward

* ereased useless code

* removed default argument

* long lines
2020-11-10 16:07:33 -08:00
geohot 5577b9d3a0 clean up imports 2020-11-10 15:53:05 -08:00
geohot db755fa103 promote swish to a tensor ops 2020-11-10 15:48:11 -08:00
geohot 5f4b76a21b touch ups 2020-11-10 15:44:47 -08:00
geohot 52ee913c98 move the mnist loader out of tinygrad proper 2020-11-10 15:37:39 -08:00
geohot 498b4d2f27 i32 and reduce line count a bit 2020-11-10 15:35:30 -08:00
geohot df64658a2c weee, opencl tests in CI 2020-11-10 10:04:45 -08:00
geohot d47a128812 pocl 2020-11-10 10:02:13 -08:00
geohot c05401a9ca sudo maybe 2020-11-10 09:53:49 -08:00
geohot 09bc8eddfe clinfo 2020-11-10 09:51:38 -08:00
geohot 58e703d099 fix tests 2020-11-10 09:49:19 -08:00
geohot 23405cec43 intel opencl 2020-11-10 09:41:40 -08:00
geohot 33090c4b0d install more 2020-11-10 09:34:56 -08:00
geohot a52590e76c cpu opencl maybe 2020-11-10 09:32:54 -08:00
geohot f513302955 refactor profiler 2020-11-10 07:31:16 -08:00
f27628b21c No separate pad2d kernel needed (#99)
Co-authored-by: holonomicjl <[email protected]>
2020-11-10 06:47:53 -08:00
geohot 2d4a5d5950 readme 2020-11-10 01:27:04 -08:00
geohot 6e6bcbe5f2 shapes on backward 2020-11-10 01:23:31 -08:00
Ryan NephandGitHub 56f71ae8e5 Cleanup (#96)
* init GPU supsample retbuf to 0

* reduce GPU kernel source lines

ref: #94
2020-11-10 01:20:04 -08:00
geohot 55012d21bb debug in backward pass too 2020-11-10 01:19:52 -08:00
geohot 5d1985312c miniprofiler is real 2020-11-10 01:05:29 -08:00
geohot c76a20b4be 4s and 7s work 2020-11-10 00:54:17 -08:00
geohot ae0cd17c2d debug is env var, and simpler faster pad2d 2020-11-10 00:42:23 -08:00
geohot f7d10d5639 DEBUG flag 2020-11-10 00:36:59 -08:00
geohot 6a56d5d030 remove pyopencl 2020-11-09 23:58:35 -08:00
geohot 943ff6490d logic error okay too 2020-11-09 23:55:21 -08:00
geohot 29b22d117f will gpu tests work? 2020-11-09 23:51:29 -08:00
geohot abbf0d1328 cleanup logsoftmax 2020-11-09 23:47:04 -08:00
geohot aeb90226a8 reduce lines with reduce_op 2020-11-09 23:36:44 -08:00
geohot 55c914912d minor cleanup 2020-11-09 23:14:59 -08:00
geohot d41ad2bf37 uint2 saves lines 2020-11-09 23:11:20 -08:00
geohot 8b23033fa9 support all the enet sizes 2020-11-09 18:04:16 -08:00
geohot 9db95ab942 fix enet padding 2020-11-09 17:56:57 -08:00
geohot 866b759d3b match torch api for pad2d 2020-11-09 17:48:56 -08:00
geohot daf073535f new -> zeros 2020-11-09 17:31:52 -08:00
Ryan NephandGitHub 16d564a53c finish unsupporting strided pool, add global avg pool test (#92) 2020-11-09 17:31:22 -08:00
geohot 7ac1b163a5 add backward to enet train 2020-11-09 16:05:52 -08:00
geohot 8ca9c0205f train_efficientnet is broken still 2020-11-09 16:01:16 -08:00
geohot 870b84a893 test pad2d backward on GPU 2020-11-09 15:50:43 -08:00
b541c05d88 Pad2d backward pass on GPU (#89)
* Pad2d backward pass on GPU

* Faster Pad2D GPU backward pass (no zeroing needed)

* Fix out of bounds error

* Don't save prg

Co-authored-by: holonomicjl <[email protected]>
2020-11-09 15:49:37 -08:00
geohot e46d122f65 not supporting stride 2020-11-09 15:06:58 -08:00
c21c2a0b62 revert b0c0c5d: Strided Pool funcs (#74) (#87)
Strided CPU Pooling was introduced but assumes small kernel size
(<=(10,10)), but efficientnet.py feeds kernel_size=(112,112).

This causes a huge array buffer allocation in stack_for_pool() that
hangs inference for a long time or until system OOM.

Revert CPU Pooling for now, and re-introduce #74 later with a new
global-average-pooling op that can be used instead of avgpool2d with
large kernel size for efficientnet inference.

Co-authored-by: Ryan Neph <[email protected]>
2020-11-09 14:58:18 -08:00
geohot 53157fb876 add back scale 2020-11-09 10:20:56 -08:00
geohot 3ffbd47335 Revert "Revert "pygame is fine, cv2 can also do the trick (#79)" (#85)"
This reverts commit 6b982621f8.
2020-11-09 10:18:48 -08:00