Наш стек графічних процесорів як для NVIDIA, так і для AMD, за винятком мінімальних шматочків підписаних прошивок, на 100% відкритий вихідний код і чистий Python, за винятком компілятора. Він не використовує драйвери постачальників, фреймворки чи бібліотеки. Ось чому так легко змусити його працювати на Mac. Для компіляторів на AMD ми використовуємо LLVM, а на NVIDIA – компілятор NAK з проекту MESA. Ми плануємо замінити компілятор на чистий тініград і за рік-два. Завдяки об'єднанню RANGEIFY наші спускові елементи тепер відповідають сучасному стилю TVM. Ми вивчаємо швидкість ThunderKittens і TileLang на цьому рівні, і повинні підготувати все це за 200 днів до дати закінчення нашого контракту на навчання AMD Llama 405B. Завдяки малому розміру tinygrad і чистій природі Python, це найпростіша бібліотека ML для прогресу, так званий найшвидший шлях вдосконалення. Зі стилем Megakernel для планування, MODeL_opt стилем для планування та стилем E-graph для символічного, ми повинні перевершити найсучасніші технології швидкості PyTorch та JAX. Якщо ми це зробимо, рів NVIDIA закінчиться. Це максимум 1000 рядків, щоб додати новий прискорювач до tinygrad. І я не маю наміру додавати новий прискорювач за допомогою драйвера ядра, компілятора та бібліотек. Всього 1000 рядків програмного забезпечення для *цілого* прискорювача, що говорить прямо на PCIe BAR, подібно до того, що tinygrad зараз робить з графічними процесорами NVIDIA та AMD.
@geerlingguy Або насправді, з AMD все ще простіше. Просто встановіть драйвер 'extra/usbgpu/tbgpu' і AMD=1
@geerlingguy Або насправді, з AMD все ще простіше. Просто встановіть драйвер 'extra/usbgpu/tbgpu' і AMD=1. 0 планує підтримувати Intel на цьому рівні.
50,31K