Тёмный

George Hotz | Programming | writing a Qualcomm GPU driver | Freedreno | Mesa for compute | part 2 

Подписаться
Просмотров 78 тыс.
% 1 031

Date of the stream 16 Dec 2023.
from $1250 buy comma.ai/shop/comma-3x & best ADAS system in the world openpilot.comma.ai
Live-stream chat added as Subtitles/CC - English (Twitch Chat) - at the bottom - Show Transcript
Sources:
- github.com/tinygrad
tinygrad bounties:
- docs.google.com/spreadsheets/d/1WKHbT-7KOgjEawq5h5Ic1qUWzpfAzuD_J06N1JwOCGs/
Hardware:
- Plugable BT-KEY3
- Samsung Galaxy Z Fold5
Follow for notifications:
- twitch.tv/georgehotz
Support George:
- twitch.tv/subs/georgehotz
Pre-order tinybox:
- buy.stripe.com/5kAaGL6lk9uX9nW144 (tinygrad.org/)
Chapters:
00:00:00 intro
00:01:02 writing a GPU driver
00:01:54 ssh to the phone, code server, vs code server
00:02:22 user space GPU driver, graphics kernel
00:05:10 asking Quentin, Perplexity
00:13:00 regex pattern allow spaces
00:21:30 parsing struct
00:25:45 GPU driver, how long in C
00:31:05 tinygrad import Tensor
00:35:40 init, GPU not controlled in kernel space, single layer pointers
00:36:55 replay this GPU command
00:38:10 TinyJit, tinygrad prints
00:44:30 kgsl_gpu_command, msm_kgsl.py
00:49:10 Galaxy Z Fold5
00:49:45 who knows that green is executable +x
00:50:18 linux dma-fence.h
00:53:00 offset gpuaddr size flags id
00:58:20 struct_kgsl_command_object
01:06:25 building a driver before building a chip
01:07:00 jobs creation, comma lesson
01:08:25 thneed openpilot, mmap64
01:12:30 gpu command, parsing the command buffer
01:19:45 freedreno driver, freedreno cffdump
01:23:05 Perplexity hallucinating
01:25:40 rnndb database 404 link
01:28:25 real command buffer
01:31:00 PM4
01:35:20 pkt_is_type7
01:41:44 alloc memoryview writable
01:46:55 type 7 and type 4 packets
01:48:40 very cool freedreno people
01:49:05 qualcomm switching to opensource driver
01:50:00 writing registers, opcode
01:52:40 number of globals, and total number
01:54:40 adreno_pm4_type3,7_packets, 7 commands, 4 write registers
01:56:50 python format string add 0x to hex
01:57:55 opcode 17, CP_THREAD_CONTROL or IN_IB_PREFETCH_END
01:59:53 python parse xml, xml to json
02:07:15 not a real name, no leak for qualcomm driver, amd, nvidia open source
02:08:30 HLSQ_CONTROL_2_REG
02:09:25 nvidia open source kernel stub gsp
02:11:20 CP_CONTEXT_REG_BUNCH2
02:13:45 CP_REG_TO_MEM
02:14:50 GPU performance counter to GPU memory
02:17:30 SP_CS_INSTRLEN, HLSQ_CS_NDRANGE_0
02:20:40 the simplest drivers that can dispatch compute kernels
02:23:00 copy out, unified memory space between CPU and GPU
02:26:00 objlist cmdlist, pkt types
02:36:00 stuct_kgsl_cmdbatch_profiling_buffer
02:42:20 printing hex
02:45:20 python address of bytearray
02:47:00 making another copy
02:48:40 strace, copyin
02:52:30 two CP_RUN_OPENCL
03:01:00 CP_LOAD_STATE6_FRAG
03:04:20 a, 9
03:08:00 python hexdump
03:11:40 GPU drivers can be written in python
03:12:50 dumping shader
03:21:25 freedreno shader registers r51
03:26:40 c20 hex 14
03:30:00 CP_LOAD_STATE6_0_STATE_TYPE
03:37:50 adreno registers
03:38:10 replacing shader compilers, mesa for compute
03:41:30 replaying command buffers
03:44:25 overview, bath, meditation
03:45:00 when tinygrad can run without dependencies
03:46:15 remote work, there is something missing
03:47:20 removing numpy from tinygrad
03:48:35 hiring entire stack for tiny corp
03:51:00 high equity, contribute
03:53:15 trolls on twitter
03:54:00 comma is doing well, san diego
03:55:20 the dream of the internet, Elon is accessible
03:56:30 work major source of value in your life
03:57:40 sustainable business open source
03:58:40 clear blog post about AI space, not trying to be understood
03:59:00 AMD mindshare, people at AMD, bugs, issues
04:02:05 thinking longer term
04:04:33 college majors by iq
04:05:10 it doesn't change. if you are 30 your life is what it is, limitations forever
04:07:55 your passion, singularity
04:12:10 against education, the elephant in the brain
04:19:30 religion, bible, game over screen
04:21:55 the invisible rainbow, 5G
04:25:45 10 books
04:29:40 not debating destiny
04:30:00 tiny keyboard
04:32:15 general science questions
04:41:20 human brain compute, wormhole
04:44:10 time dilation, sr vs jk flip flop
04:46:30 attention mechanism in transformers
04:47:40 e minor, supernova
04:48:50 Ra by qntm
04:50:10 milky way galaxy
04:52:34 power companies high voltage, black hole
04:55:20 polaritiazon in electro mechanics, einstein nobel prize
05:00:00 metal rod in space
05:01:20 universe not locally real
05:02:40 thank you for watching, human nature
Official George Hotz communication channels:
- geohot.com
- realGeorgeHotz
- georgehotz
- tinygrad.org
- geohot.github.io/blog
- github.com/geohot
We archive George Hotz and comma.ai videos for fun.
Follow for notifications:
- geohotarchive
Thank you for reading and using the SHOW MORE button.
We hope you enjoy watching George's videos as much as we do.
See you at the next video.

Наука

Опубликовано:

 

18 дек 2023

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 67   
@geohotarchive
@geohotarchive 9 месяцев назад
Bounties for tiny corp / tinygrad -> docs.google.com/spreadsheets/d/1WKHbT-7KOgjEawq5h5Ic1qUWzpfAzuD_J06N1JwOCGs/ 03:48:35 Hiring entire stack for tiny corp join if you are interested | 03:56:30 work major source of value in your life | Read en.wikipedia.org/wiki/The_Elephant_in_the_Brain Pre-order tinybox buy.stripe.com/5kAaGL6lk9uX9nW144 more info on -> tinygrad.org | github.com/tinygrad/tinygrad comma 3X comma.ai/shop/comma-3x | best ADAS system in the world openpilot.comma.ai | from $999 comma.ai/shop/body the future of people Support George by subscribing twitch.tv/subs/georgehotz | Follow George on twitter.com/realGeorgeHotz to be up to date | Read George's geohot.github.io/blog/ Chapters: 00:00:00 intro 00:01:02 writing a Qualcomm GPU driver 00:01:54 ssh to the phone, code server, vs code server 00:02:22 user space GPU driver, graphics kernel 00:05:10 asking Quentin and Perplexity labs 00:13:00 regex pattern allow spaces 00:21:30 parsing struct 00:25:45 GPU driver, how long in C 00:31:05 tinygrad import Tensor 00:35:40 init, most of GPU not controlled in kernel space, single layer pointers 00:36:55 replay this GPU command 00:38:10 TinyJit, tinygrad prints 00:44:30 kgsl_gpu_command, msm_kgsl.py 00:49:10 Samsung Galaxy Z Fold5 00:49:45 who knows that green is executable +x 00:50:18 linux dma-fence.h 00:53:00 offset gpuaddr size flags id 00:58:20 struct_kgsl_command_object 01:06:25 building a driver before building a chip 01:07:00 jobs creation, comma lesson 01:08:25 thneed openpilot, mmap64 01:12:30 gpu command, parsing the command buffer 01:19:45 freedreno driver, freedreno cffdump 01:23:05 Perplexity labs hallucinating 01:25:40 rnndb database 404 link 01:28:25 real command buffer 01:31:00 PM4 01:35:20 pkt_is_type7 01:41:44 alloc memoryview writable 01:46:55 type 7 and type 4 packets 01:48:40 very cool freedreno people 01:49:05 qualcomm switching to opensource driver 01:50:00 writing registers, opcode 01:52:40 number of globals, and total number 01:54:40 adreno_pm4_type3,7_packets, 7 commands, 4 write registers 01:56:50 python format string add 0x to hex 01:57:55 opcode 17, CP_THREAD_CONTROL or IN_IB_PREFETCH_END 01:59:53 python parse xml, xml to json 02:07:15 not a real name, no leak for qualcomm driver, amd, nvidia open source 02:08:30 HLSQ_CONTROL_2_REG 02:09:25 nvidia open sourced the kernel stub that talks to gsp 02:11:20 CP_CONTEXT_REG_BUNCH2 02:13:45 CP_REG_TO_MEM 02:14:50 GPU performance counter to GPU memory 02:17:30 SP_CS_INSTRLEN, HLSQ_CS_NDRANGE_0 02:20:40 the simplest drivers that can dispatch compute kernels 02:23:00 copy out, unified memory space between CPU and GPU 02:26:00 objlist cmdlist, pkt types 02:36:00 stuct_kgsl_cmdbatch_profiling_buffer 02:42:20 printing in hex 02:45:20 python address of bytearray 02:47:00 making another copy 02:48:40 strace, copyin 02:52:30 two CP_RUN_OPENCL 03:01:00 CP_LOAD_STATE6_FRAG 03:04:20 a, 9 03:08:00 python hexdump 03:11:40 GPU drivers can be written in python 03:12:50 dumping the shader 03:21:25 freedreno shader registers r51 03:26:40 c20 hex 14 03:30:00 CP_LOAD_STATE6_0_STATE_TYPE 03:37:50 adreno registers 03:38:10 replacing the shader compilers, mesa for compute 03:41:30 replaying the command buffers 03:44:25 stream overview, bath, meditation 03:45:00 when tinygrad can run without dependencies 03:46:15 remote work, there is something missing 03:47:20 removing numpy from tinygrad 03:48:35 hiring entire stack for tiny corp 03:51:00 high equity, contribute to the project 03:53:15 trolls on twitter 03:54:00 comma is doing well, san diego 03:55:20 the dream of the internet, Elon is accessible 03:56:30 work major source of value in your life 03:57:40 sustainable business of open source 03:58:40 clear blog post about AI space, not trying to be understood 03:59:00 AMD mindshare, people at AMD, AMD bugs, issues 04:02:05 thinking longer term 04:04:33 college majors by iq 04:05:10 it doesn't change. if you are 30 your life is what it is, limitations forever 04:07:55 following your passion, your passion is stupid, singularity 04:12:10 against education, the elephant in the brain 04:19:30 christian religion, the bible, game over screen 04:21:55 the invisible rainbow, 5G 04:25:45 naming 10 books 04:29:40 not debating destiny 04:30:00 tiny keyboard 04:32:15 general knowledge science questions 04:41:20 human brain compute, wormhole 04:44:10 time dilation, sr vs jk flip flop 04:46:30 attention mechanism in transformers 04:47:40 e minor, supernova 04:48:50 Ra by qntm 04:50:10 milky way galaxy, quantum mechanics 04:52:34 power companies high voltage, black hole 04:55:20 polaritiazon in electro mechanics, einstein nobel prize 05:00:00 metal rod in space 05:01:20 universe not locally real 05:02:40 thank you for watching, human nature
@doge0069
@doge0069 9 месяцев назад
The average econ grad does not have an iq of 128
@paulvario2883
@paulvario2883 9 месяцев назад
How do I sign up for a bounty task? I am particularly interested in NVidia Tensor Core Support and Llama2-7b on M1 at 10 toks/s.
@geohotarchive
@geohotarchive 9 месяцев назад
@paulvario2883 github.com/tinygrad/tinygrad/issues?q=label%3Abounty
@ahmedaraara822
@ahmedaraara822 9 месяцев назад
please keep doing this. thanks alot
@geohotarchive
@geohotarchive 9 месяцев назад
@ahmedaraara822 thank you to George for streaming 😊
@Behardy24
@Behardy24 9 месяцев назад
“You don’t change. You change the perception of yourself” - George Hotz
@serioussrs9349
@serioussrs9349 9 месяцев назад
yeah but I would also say that if one changes his environment like the place one is living in or the people, one certainly behaves different and has different stimuli, so maybe the 30 year old should look for drastic changes in his environment to light up different facets of oneself.
@tython3
@tython3 9 месяцев назад
I understand believing in God because of the alternatives, but why Christianity? How did you get from God to Jesus is the son of God? Don't you need evidence for that? I ask this as someone who used to be a very devoted Christian. The thought process that leads to Christianity is not at all predictive of truth. Like many other major religions, the premise is that you have to believe the least likely explanation. That's what a miracle is - the least probable explanation. Even if you believed in magic, would it be reasonable to assume that a particular magician is magic just because you couldn't think of an alternative explanation for their trick?
@nicholassemmens7865
@nicholassemmens7865 8 месяцев назад
man i have no idea what any of this stuff means.
@Zeroduckies
@Zeroduckies 9 месяцев назад
Sooo lets write a 3090 driver for ms dos ® sir you are a legend a major glitch in the matrix. Keep up the good work. Nothing you cant do
@BoomerLazlo
@BoomerLazlo 9 месяцев назад
these streams have been a delight and intellectually stimulating, a rarity on the internet, thank you George. You've inspired me.
@w3w3w3
@w3w3w3 4 месяца назад
Has geohotz stopped using vim or? I noticed the past few months he now is using vscode? 👀
@marq4375
@marq4375 9 месяцев назад
Help me out boys, did George code Quentin himself? If so I was looking for the video to see this done.
@BigPython3.4.11
@BigPython3.4.11 9 месяцев назад
Is there a way to find out ahead of time roughly when george will be streaming. I'm in Aus so back to front timezones but would love to catch a live stream.
@geohotarchive
@geohotarchive 9 месяцев назад
@BigPython3.4.11 just make sure you follow www.twitch.tv/georgehotz and enable notifications help.twitch.tv/s/article/where-are-my-notifications?language=en_US. Right now, looks like he is streaming on the weekends, but it's usually very random schedule so making sure you are notified when he starts streaming is the only way to catch the live stream.
@jessestone117
@jessestone117 9 месяцев назад
4:19:38 Christ has indeed died for your sins. Mine and yours alike
@chrischristi1818
@chrischristi1818 6 месяцев назад
What is the general software skillset needed to work on low level projects like tiny grad ? C, Python, Assembly & Machine Learning? I'm currently working on Machine Learning, C, Python and building kernels(with minimal Assembly skills).
@creatorofimages7925
@creatorofimages7925 8 месяцев назад
Biggest bag of bullshit to say: I want to work for/with you but I don't want to contribute/gather experience about the literal thing the company does. 😂 You putting in so much work, I can understand your anger. I'd honestly just ignore such people. If someone's life purpose amounts to just earn enough to live a very good life, then what is the purpose at all, right? "Not having time" is the most bullshit excuse for men in ther 20s-30s - unless they have children.
@nnezeht
@nnezeht 9 месяцев назад
People were asking George like he is an AGI Lol
@scintillatingcontent4809
@scintillatingcontent4809 8 месяцев назад
Learning HTML ans CSS them boom i see this kinda video.. Should this be a motivation or a reason to give up coding lol
@riga_pham
@riga_pham 9 месяцев назад
I have a question. I saw that he hooked the native function "ioctl" function. But replace & sniff this function for what? I don't know what is the final purpose. Can you make it more clear? Thanks.
@zhrtvp
@zhrtvp 9 месяцев назад
George stop using that keyboard and put voice to AI to code those things, it takes too much time that way. Use on the code editor some AI engines.
@abkrinoegp
@abkrinoegp 9 месяцев назад
i learned html and css and iam about to learn js n php can any one tell can i upload my website for free or it is paid before i waste my time learning idonot habe aa credit card
@hellawacked
@hellawacked 9 месяцев назад
Self host locally with Apache it’s free.
@bossgd100
@bossgd100 9 месяцев назад
You will probably pay for a domain name (between 50to 100$ each year). Learn to code is not a waste
@bossgd100
@bossgd100 9 месяцев назад
You can still publish it for free if you dont want à custom domain name/website url
@abkrinoegp
@abkrinoegp 9 месяцев назад
coding is not a waste f time unless it is paid i cannot pay google i donot have a credit card i am 23 itried to upload my web page but icouldnot access it from anther device using anther website to upload it is not a good idea of course he knows my ip adreas @@bossgd100
@DavidCosta85
@DavidCosta85 9 месяцев назад
hey George if we humans had more food in the planet we would live longer😊 like 200 years supply of food for the beings on the planet would be enough. there is a lot of waste in the process😊
@dfordemo981
@dfordemo981 8 месяцев назад
Super Informative, why don't you choose pycharm?
@josh1234567892
@josh1234567892 8 месяцев назад
The things I would do for a brain like his, dude is a machine.
@volodymyrbalytskyy5207
@volodymyrbalytskyy5207 9 месяцев назад
Another topic I kept hearing during Covid era, besides cloth masks and 5G, was chemtrails.
@XYZ-ow8lx
@XYZ-ow8lx 8 месяцев назад
trying to define yourself is like trying to bite your own teeth
@raspberryPi1337
@raspberryPi1337 9 месяцев назад
Great content, thanks, it helps me to focus while I program stuff
@jorgen0lsen863
@jorgen0lsen863 8 месяцев назад
Did You just crack a beer and write a gpu driver ?
@Kersich86
@Kersich86 9 месяцев назад
maybe he will read comments next time. neurotrasmitters and electrical signal are not separated systems. neurotrasmitters transmit signal between neurons. hance the name. an electrical potential is then sent only internally to the neuron. hopes this helps.
@_JoeMomma
@_JoeMomma 8 месяцев назад
This is how i feel when I set a ip on one of my vms LMAO
@CSGraduateGrind
@CSGraduateGrind 9 месяцев назад
Did he ever answer what to do if you fall under category 2 at 3:49:49
@joshgross8741
@joshgross8741 9 месяцев назад
He doesn't even know what viscosity is. PPC.
@TofikEnglish-kg3wg
@TofikEnglish-kg3wg 8 месяцев назад
guys what is this font and size he use in vscode?
@andrewdunbar828
@andrewdunbar828 8 месяцев назад
submitting once then resubmitting twice so three times
@ryderbrooks1783
@ryderbrooks1783 9 месяцев назад
"thank you regex 101 guy - I like you" lol
@mikestaub
@mikestaub 9 месяцев назад
Another great stream, thanks for doing these George
@weaponkid1121
@weaponkid1121 8 месяцев назад
what mouse does he use? the click sounds so soft
@OoOoO55231
@OoOoO55231 9 месяцев назад
Can someone tell me why George choose Plexity AI instead of alternatives like ChatGPT or Github Copilot?
@GymBro1607
@GymBro1607 6 месяцев назад
From my own experience it gives much better codes as well as much detailed answer rather than just giving diplomatic or generic answers.
@radhakrishnanmanickavasaga124
@radhakrishnanmanickavasaga124 9 месяцев назад
4:13:17 im going to tead this book tonight thanks geohotz
@usuallyhigh129
@usuallyhigh129 8 месяцев назад
how do I learn driver programming?
@evokanivo
@evokanivo 9 месяцев назад
George LOVES Qualcomm, that's why he's working with their hardware :) Way to go, George!
@faceofdead
@faceofdead 9 месяцев назад
strangely enough, i keep coming back to your stream, as it is the most productive stuff i encounter in my everyday
@d77droid
@d77droid 9 месяцев назад
watching this is like like wandering the old roads of greece pondering deep philosphy i thank you mr george you are a saint
@radhakrishnanmanickavasaga124
@radhakrishnanmanickavasaga124 9 месяцев назад
What if your passion is stupid 😓😓
@soufianta8374
@soufianta8374 9 месяцев назад
Why all this crazy stuff in Python ? Prototyping only ?
@bernardcrnkovic3769
@bernardcrnkovic3769 19 дней назад
that seems like such an unimportant detail imho. python is just good at gluing things together.
@bugurah
@bugurah 8 месяцев назад
This guy codes
@SummerKhan-g3l
@SummerKhan-g3l 8 месяцев назад
Sorry to ask but what os is he using
@narrowbtw3970
@narrowbtw3970 8 месяцев назад
macos
@badrakhariunchimeg1031
@badrakhariunchimeg1031 8 месяцев назад
hello world
@ratulmondal7154
@ratulmondal7154 8 месяцев назад
Golden video
@Flarken_Harken
@Flarken_Harken 9 месяцев назад
keep on Hotzn' it!
@creatorofimages7925
@creatorofimages7925 8 месяцев назад
What would your take be on scripting
@nicolaskeroack7860
@nicolaskeroack7860 8 месяцев назад
yeah and by 24 if you don't have at least a master its too late for a phd
@creatorofimages7925
@creatorofimages7925 8 месяцев назад
@@nicolaskeroack7860That's a different story. I am talking strictly about building up critical thinking / mathematical problem solving and getting really good at it. There are areas in IT, where you do not require this so much. From what I have heard, PHD is more about discipline and endurance, not necessarily the complexity of the material (broadly speaking) and skill at that point is assumed to have happened in your bachelor's mainly.
@Chickenwing38nigeria
@Chickenwing38nigeria 8 месяцев назад
@@nicolaskeroack7860 what are you smoking. It's never too late to get a phd
@denverlopes4454
@denverlopes4454 9 месяцев назад
yo does anyone know what keyboard george uses?
@MrBenekable
@MrBenekable 9 месяцев назад
hhkb
@mhalton
@mhalton 3 месяца назад
Boring!