tinygrad

We write and maintain tinygrad, the fastest growing neural network framework (over 23,000 GitHub stars)

It's extremely simple, and breaks down the most complex networks into 3 OpTypes

ElementwiseOps are UnaryOps, BinaryOps, and TernaryOps.
They operate on 1-3 tensors and run elementwise.
example: SQRT, LOG2, ADD, MUL, WHERE, etc...

ReduceOps operate on one tensor and return a smaller tensor.
example: SUM, MAX

MovementOps are virtual ops that operate on one tensor and move the data around
Copy-free with ShapeTracker.
example: RESHAPE, PERMUTE, EXPAND, etc...

But how...where are your CONVs and MATMULs? Read the code to solve this mystery.


Work at tiny corp

We are now funded and hiring full time software engineers. Very talented interns okay.

See our bounty page to judge if you might be a good fit. Bounties pay you while judging that fit.

We are also hiring for operations and hardware, but if you haven't contributed to tinygrad your application won't be considered.

tinybox (now shipping)

We sell a computer called the tinybox. It comes in two colors + pro.

tinybox red and green are for people looking for a quiet home/office machine.
tinybox pro is for people looking for a loud compact rack machine.

redgreenpro
FLOPS738 FP16 TFLOPS991 FP16 TFLOPS1.36 FP16 PFLOPS
GPU Model6x 7900XTX6x 40908x 4090
GPU RAM144 GB192 GB
GPU RAM bandwidth5760 GB/s6050 GB/s8064 GB/s
GPU link bandwidthFull PCIe 4.0 x16 (64 GB/s)
CPU32 core AMD EPYC2x AMD GENOA
System RAM128 GB384 GB
System RAM bandwidth204.8 GB/s921.6 GB/s
Disk size4 TB raid array + 1 TB boot1 TB boot
Disk read bandwidth28.7 GB/suse network
Networking2x 1 GbE + open OCP3.0 slot (up to 200 GbE)2x open PCIe5 x16
Noise< 50 dB, 31 low speed fansLoud
Power Supply2x 1600W, 100V~240V4x 2000W, 200V+
BMCAST2500AST2600
Operating SystemUbuntu 22.04
Dimensions12U, 16.25" deep, 90 lbs4U, 31" D, 88 lbs
Rack?Freestanding or rack mountSupermicro rails
Driver QualityMediocreGreat
SHIPPINGBUY NOW FOR $15,000BUY NOW FOR $25,000PREORDER $40,000

FAQ

What is a tinybox?
It is a very powerful computer for deep learning, and likely the best performance/$. It was benchmarked in MLPerf Training 4.0 vs computers that cost 10x as much. And of course, anything that can train can do inference.
How do I get a tinybox?
Place an order through the links above. The factory is up and running, and it will ship within one week of us receiving the payment. Currently offering pickup in San Diego + shipping worldwide. E-mail support@tinygrad.org for any procurement related questions.
Where can I learn more about the tinybox?
We have a lot of content on our Twitter, we also have a tinybox docs page.
Is tinygrad used anywhere?
tinygrad is used in openpilot to run the driving model on the Snapdragon 845 GPU. It replaces SNPE, is faster, supports loading onnx files, supports training, and allows for attention (SNPE only allows fixed weights).
Is tinygrad inference only?
No! It supports full forward and backward passes with autodiff. This is implemented at a level of abstraction higher than the accelerator specific code, so a tinygrad port gets you this for free.
How can I use tinygrad for my next ML project?
Follow the installation instructions on the tinygrad repo. It has a similar API to PyTorch, yet simpler and more refined. Less stable though while tinygrad is in alpha, so be warned, though it's been fairly stable for a while.
When will tinygrad leave alpha?
When we can reproduce a common set of papers on 1 NVIDIA GPU 2x faster than PyTorch. We also want the speed to be good on the M1. ETA, Q2 next year.
How is tinygrad faster than PyTorch?
For most use cases it isn't yet, but it will be. It has three advantages:
  • It compiles a custom kernel for every operation, allowing extreme shape specialization.
  • All tensors are lazy, so it can aggressively fuse operations.
  • The backend is 10x+ simpler, meaning optimizing one kernel makes everything fast.
  • Where is tinygrad development happening?
    On GitHub and on Discord
    How can the tiny corp work for me?
    Email me, george@tinygrad.org. We are looking for contracts and sponsorships to improve various aspects of tinygrad.
    How can I work for the tiny corp?
    See hiring above. Contributions to tinygrad on GitHub always welcome, and a good way to get hired.
    Can I invest in the tiny corp?
    Invest with your PRs.
    What's the goal of the tiny corp?
    To accelerate. We will commoditize the petaflop and enable AI for everyone.