When you introduce CPU, GPU, TPU, DPU, and QPU at a party, CPU says 'I'm versatile', GPU says 'I'm visual', TPU says 'I'm trending', DPU says 'I'm data-centric', and QPU? Well, it's quantum; it knows all the answers, but when you look at it, it just says 'Maybe...'
When you compare CPU, GPU, TPU, DPU, and QPU to superheroes, CPU is like Batman, GPU is like Superman, TPU is like Flash, DPU is like Cyborg, and QPU? Well, it’s quantum; it’s like Doctor Strange, but when you ask it to save the world, it just says ‘There are 14 million possibilities…’
The thing with Quantum Computers is that, basically, you can take a function, feed it literally every possible input in one go, retrieve every possible output simultaneously, and then sample from that statistically to tell you things about the function. It's incredibly niche, and super hard to actually build, and we're not even sure how many problems can actually be accelerated with it, but it's fun to work through the Math for.
Don't quantum computers also get super fucked by background noise (much like anything involving quantum physics)? This reduces their usefulness to basically running in specific spots of outer space, assuming it can survive all the chaotic background radiation with no effect on its function.
it's true that you feed it all inputs, but you actually just get one output, like a normal computer. And then there's some incredibly complex math to statistically correlate repeated outputs with the true answer you want.
@@joankim123 yea, as far as I remember it would collapse the quantum function, but you can choose specific parameters to be matching the required values. Basically, give me values for arguments of the function, which would result in the wanted result. Prolog 2.0 lol.
BRO! 6:16 was the MOST comprehensive visualization of matrix multiplication I've seen and I've watched several videos and tried reading several books because I've been self-studying and I came to the conclusion that I need a tutor or something but wow bravo. That actually made me excited to learn it! If you're not doing math videos can you point me in the right direction? Thank you and God bless!
Seems like we have a family reunion here: CPU, the brainy one, GPU, the artist, TPU, the specialized smarty-pants, DPU, the traffic controller, and QPU, the one who says he's working, but you're always unsure because he lives in multiple realities!
I asked the GPT to explain that video to my dog, he said, Explaining this to a dog might be a bit challenging since dogs don't understand complex technical concepts. However, you can use simple actions and treats to represent these concepts: 1. **CPU (Central Processing Unit)**: Show your dog a treat (representing a task) and then give it to them. CPUs are like you, the treat giver, handling everyday tasks. 2. **GPU (Graphics Processing Unit)**: Take a ball (representing a fun task), throw it, and encourage your dog to fetch it. GPUs are like a friend who helps with fun and sporty tasks. 3. **TPU (Tensor Processing Unit)**: Place a puzzle in front of your dog and watch them solve it (or attempt to). TPUs are like a clever friend who's great at solving puzzles. 4. **DPU (Data Processing Unit)**: Show your dog their leash (representing a connection) and take them for a short walk. DPUs are like a friend who helps you connect with others and stay safe during walks. 5. **QPU (Quantum Processing Unit)**: Okay, this one's tricky! Pretend to be a magician and hide a treat in one hand. Then, show both hands and let your dog choose. Sometimes the treat appears, sometimes it doesn't (representing quantum unpredictability). Remember, dogs won't grasp these concepts fully, but it can be a fun and interactive way to spend time with your furry friend! 🐶🐾
Multicore CPUs aren't the reason why we can run multiple applications at once. Operating systems could do that long before multicore CPUs were a thing. The technology which allows that is called process scheduling. The OS is basically switching between the running applications giving each of them a fraction of time (many times per second) to execute whatever code they are currently running. Having multiple cores just allows the OS to handle multiple processes more efficiently.
@@kkounal974 He literally said at 3:02 that "modern CPUs also have multiple cores which allows them to do work in parallel, which allows you to use multiple applications on your PC at the same time". I'm all for benefit of the doubt, but anyone who doesn't already know about context switching is gonna leave this video thinking single core processors can't multitask.
Right but the difference between single core and now multicore processors is that instead of scheduling instructions of multiple applications on the same core, you can execute them on whichever core is available, provided the instructions don't require context.
until multicore came into reality, OS could on time share the slices of different threads, it truly became parallel processing only with the muitiple pipelines of multi-core architecture.
Was coming here to say exactly that lol Also it's very important to distinguish between multiple processes and multiple applications. Because a single application can (and often will) have multiple processes that if all running on one core still have to be time shared. That's why the wizards have to ensure they use all cores if they want to get the best out of the CPU. Which of course means that you might be running multiple applications, that all use multiple cores. So the time sharing the OS does is still super important
CPU: We need to talk. GPU: Already calculated what you're about to say. TPU: Already completed your words with predictions. DPU: Already sent the message. QPU: I was on the next conversation.
You didn't mention DSP - digital signal processor. Specialized to run a single program continuously in a loop {input -> process -> output} with a strict time limit dictated by the sampling rate. Used extensively for stuff like audio, radio comm and oscilloscopes.
@@PrathamInCloudnot necessarily true, most general purpose computers have onboard audio chips that are doing A/D and D/A conversions, and that might involve some DSP. Lots of modern phones have dedicated DSP modules attached to their cameras and for dealing with microphone audio.
There are many smaller chips doing smaller stuff like for instance on a mac, Apple T2 Security Chip, Secure Enclave, Neural Engine, Image Signal Processor (ISP), Audio Processor, Touch ID Sensor, Thunderbolt / USB4 Controller, Display Engine, Storage Controller.
An analogy I really liked for comparing cpu to gpu is trains vs cars, cars (cpu) are really fast for transporting one person as fast as possible, while trains (gpu) are faster than cars when transporting thousands of people as fast as possible, a cpu has really low latency for executing one instruction while gpus abuse simd operations to reduce the average latency over many parallel and similar instructions.
Don't forget that the train can only transport people and only transport them all to the same station while the car can transport all kinds of stuff and load on and off at any point.
Hello again heisenberg! For those who don't know, Heisenberg is the fresh account of the "NMRIH is a great source mod" which was banned for botting/violating RUclips TOS -Same mannerisms, Over 800+ subs to only popular/viewed channels, popped up right when the previous account was banned about four months ago, this account is a bot that spams and like baits channel's comment sections for subs.
Its fascinating how graphics cards have come along Initially for graphics rendering Then crypto Now Deep learning neural networks and Ai Wow i wonder what they'll do next
You could also go over older deprecated units. The FPU (floating point unit) which is now included in most CPUs, the short lived physics cards which now have merged with graphics cards and the long lived sound cards, when CPUs were not powerful enough to do sound and other functions at the same time. As you can see most of these units died due to COUs becoming more powerful and taking over their jobs. That is because there is a fairly hard barrier for performance needed for things like sound unlike graphics where the quality rose with performance of these cards.
It's important to clarify on most architectures (especially CISC) one clock cycle usually isn't one instruction, only some very fast instructions can execute in one clock cycle but reading memory or division/multiplication can take several clock cycles.
Most of the common instructions actually finishes in one clock cycle these days, AMD and Intel have both worked really hard on that to reduce latency. But you're right, some instructions might take multiple clock cycles. On the other hand a core have multiple pipelines and can run multiple instructions simultaneously, filling pipelines with out of order execution, speculative execution and a second thread to ensure that execution resources are used even if one threads code doesn't use that resource in that moment.
Some instructions can be executed paralely in 1 cycle if they are not depependend, for example if there are 4 sequential addittions to 4 registers the cpu will execute all of them in one clock cycle because most Cisc CPUs have multiple ALUs so they can execute those operations simultanosly
I think it's important to note that GPUs are much better at floating point operations which are essential to calculate co-ordinates for 3D rendering while CPUs are mainly good at integer operations - that's one of the reasons they co-exist and can't replace each other. I know the video explained some of it, but I'm surprised it didn't touch on the float-integer subject. Also, how did nobody point out the literal madlad playing League of Legends with a gamepad at 5:01, lol?
you know . . . i've been having this conversation with my friends (who are algo pretty well educated i must say), and we all agree that the field of philosofy whom ussually were the ones given the task to analyze the facts studied by science and kinda digest it and present it to the regular foe in an understandable way has been less and less capable of doing this job and have been more and more disconected than ever (science and philosophy should be more interconected now than ever) sadly because the factual data presented by science, is becoming more and more complicated by the introduction of . . . well the "quamtum everthing" as we call it xd, so what happen when not even the philosophers can't understand what the fuck i going on the physics department, and to be fair, i dont blame them. we din't really get to answer at the end but i think this channel has something about that migth help with the current situation.
Correction: 1 Hz does not mean 1 instruction per second. Many types of instructions, like multiply/divide and memory operations, take multiple clock cycles to finish. 1 Hz just mean its clock runs once per second. Edit: I'm not completely sure about this second one, but I think Neumann in von Neumann is pronounced NOY-min, not NEW-min.
That’s a tricky one as he is from Hungary and I’m not sure how they would pronounce it. But in German it is NOY-mann. But Americans tend to pronounce it NEW-mann and he lived there for a fair while so he was probably called that when he was there.
I watched this on 2x speed but could fully comprehend due to having background knowledge but also the fact that your explanation is soo good! In 4 mins I understood this whole thing, thank you soo much !!
3:03 Just to expand on this, CPUs don't strictly *need* multiple cores to run programs at the same time. What really allows this to happen is context switching and I/O. Iff you record the states of all of the registers and memory of a program (i.e. the program context), and then restore the registers and memory to those states at a later time, the program will continue running like no time passed. Operating systems use this nifty feature to constantly switch out the currently running program, and they do this so many times per second that the user feels like the programs are rhunning smoothly in parallel. And they switch contexts either when a certain number of milliseconds passes, or when the current program thread does some I/O, since a thread waiting for I/O to complete does not need the CPU.
ALUs (arithmetic logic units) and FPUs (floating point units) also used to be a thing but now days are almost always part of the CPU (and are plenty powerfull so there is no need to add external ones).
FPU is replaced by AVX, there's even a separate instruction for floats summary and subtraction executing in just 2 cycles. The only case FPU is useful in is OS development (that shit with debug registers and stuff)
@@robertobokarev439AVX is just the contrived name of the ISA extension on x86 that allows vectorization/SIMD ops . FPU is the name of the module within the microarchitecture. These are totally different things.
@@jacob2808Yes it's not as mature, but I personally see RISC-V is the way to go because of the long term viability, and the open nature being better for compatibility and usability
Here is a detailed breakdown of the video: 0:00 - 0:35 Introduction to Computing Magic Fireship (the speaker) introduces the topic of computers and compares them to magic. He explains that computers perform calculations by following a set of instructions, similar to how magicians perform illusions. 0:36 - 1:10 The Four PUs Fireship introduces the concept of different processing units (PUs) in a computer: CPU, GPU, TPU and DPU. He briefly mentions that CPUs are the most common type of PU. 1:11 - 2:20 History of CPUs Fireship dives into the history of CPUs, starting with the Z1, the first programmable computer created by Konrad Zuse in 1936. He explains that the Z1 was a mechanical computer and could only execute one instruction per second. He then talks about the invention of the transistor in 1947, which revolutionized computers by allowing them to be electronic and much faster. The video mentions the development of the integrated circuit in 1958, which allowed multiple transistors to be placed on a single chip, paving the way for modern CPUs. In 1971, Intel released the first commercially available microprocessor, the 4-bit Intel 4004. 2:21 - 3:11 What CPUs Do Fireship explains that CPUs are the central processing units of a computer, often referred to as the brain of the computer. CPUs are responsible for running the operating system, executing programs, and managing hardware. They are optimized for sequential computations that involve a lot of branching and logic, like route planning software. Modern CPUs have multiple cores to allow them to perform multiple tasks simultaneously. 3:12 - 4:01 Limitations of CPUs The video discusses the limitations of CPUs, mentioning that adding more cores is not always the best solution due to increasing power consumption and heat dissipation. 24 cores is mentioned as the upper limit for high-end CPUs at the time of the video (August 2023). The video also briefly mentions the two major CPU architectures: x86-64 bit, used in most modern desktops, and ARM, used in mobile devices due to its better power efficiency. 4:02 - 5:22 GPUs Explained Fireship introduces GPUs (Graphics Processing Units) as another type of PU. GPUs are specifically designed for parallel computing tasks, making them ideal for tasks that require a lot of calculations at once, like video games and training deep learning models. A single GPU core is slower than a single CPU core, but GPUs have many more cores, allowing them to perform massive amounts of calculations simultaneously. 5:23 - 6:22 Why Not Use GPUs for Everything? The video addresses the question of why GPUs are not used for everything. It explains that GPU cores are simpler than CPU cores and not well-suited for complex logic and branching. CPUs are like Toyotas, versatile for many tasks, while GPUs are like rocketships, fast in a straight line but not ideal for all situations. 6:23 - 7:10 TPUs: Tensor Processing Units Fireship introduces TPUs (Tensor Processing Units) designed specifically for machine learning tasks. TPUs are similar to GPUs but optimized for tensor operations, such as matrix multiplication, which is essential for training deep learning models. TPUs were developed by Google in 2016 to work with TensorFlow software. 7:11 - 7:59 DPUs: Data Processing Units The video introduces DPUs (Data Processing Units) as the newest type of PU. DPUs are designed for big data centers and handle data processing tasks like networking, routing, security, and data storage. They are based on the ARM architecture and aim to take over data processing tasks from CPUs, allowing CPUs to focus on general-purpose computing. 8:00 - 8:25 Future of Computing: QPUs Fireship briefly mentions QPUs (Quantum Processing Units) as a future technology. Quantum computers use qubits that can be in multiple states simultaneously, unlike classical bits that are either 0 or 1. This allows quantum computers to perform certain tasks much faster than classical computers. The video mentions that quantum computers could break modern encryption methods.
Fun fact - prior to parallel processing on multiple cores, only OS's that could handle time-slicing could run multiple programs at what, to us sloooooow humans looked like in parallel. The Amiga had such an operating system, and for a while was used by NASA to handle comms with satellites in preference to Windows boxen, because Windows at that time could literally only handle one program running at a time. On my A1200, I once had a word processor going, whilst OctaMED was playing some music, a little video cartoon (very low res by todays standards, mind!) was playing in another and a couple of other things that I can't recall what they were after all these years. That pushed my Amiga (an A1200 with a 68030 processor) to its' limits, and some of the processes would go a tad slow now and then, but OctaMED was chugging along quite nicely through it all. Sigh. I loved the Miggy, it was a joy to use. I so wish Commodore hadn't shot themselves in every limb before shooting themselves in the head!
@@HunterKiotoriIt's best to play with whatever you grew up with, in my opinion. The brain remembers. My cousin still treats his computers keyboard like a controller, while I'm still wrapping my head around LT&RTs, and how to switch between two buttons simultaneously. It's a similar problem when switching musical instruments from, say a Guitar or Violin to a Keyboard.
And here I thought QPU stood for Quad Processing Unit Yes, that's a thing, usually a GPU-like parallel processor. Raspberry Pis mentioned in the video have one as part of their VideoCore "GPU". E.g. VideoCore IV has 12 cores, each processes 4 vectors per instruction cycle, with each vector being 4x32bit - so a 16-way 32bit processor. Used for the OpenGL implementation, but can also be programmed manually, if you dare (assembly or some higher level languages though with lesser support). It actually has decent branching support for a GPU, as you can mask away results for each vector element, and can branch completely if all your vector elements are fine with that branch.
CPU to GPU: "You're pretty graphic, huh?" GPU to TPU: "You tensor to be dramatic, don't you?" TPU to DPU: "Always data-centered huh?" DPU to QPU: "Quantum of nonsensical bragging!" QPU: "I've processed this joke in a parallel universe where it's actually funny!"
Ah, the case of running an compiler on the template meta programming instruction set TMPI. Letting the compiler compile time compiler that runs on compile time.
Inside the Broadcom Videocore GPU there are 4 slices. Each slice contains a quad processing unit. Which is a quad threaded CPU risc CPU core with additional instructions for graphics operations. It runs a proprietary firmware based on Microsoft threads and is also responsible for the boot sequence on the raspberry pi.
These were responsible mainly for converting video memory data directly into analog-ready signals. In that sense, a PPU was technically more of a DAC than a GPU. On that topic, a GPU is really only a PPU if it has an analog video output of some kind.
The reason you can do multiple things at once isn't because of multiple cores, we could do it back with only a single cpu. Your CPU does a tiny bit of computation at a time for multiple processes, and switches between them rapidly. Think of it like a chef cooking 20 meals at once. The reason this isn't noticeable is largely due to the vastly slower I/O commands it has to wait for. You can think of this as frying. You can think of the CPU as cracking the egg, plating up, etc.
@@rankarat Do they though? They might share a memory controller which needs to fetch the data sequentially. Parallelism depends just on the expected latency of the output and can be achieved via interleaving.
A single cpu core doing multiple things at once is like you doing homework and eating food at the same time, you alternate. A multi-core cpu doing g multiple things at once is like you doing homework and listening to music at the same time.
Modern x86 processors does run fairly similarly to RISC type of processor but it still does have a lot more instructions in case they are still being used (to not break compatibility). RISC V will also be an interesting instruction set architecture but it is mainly just in microcontrollers and Raspberry pie type devices and not for personal and data center usage yet. There are a lot of special processors made like for taking pictures/video on phones and encoder/decorder. I would think with the rise of various machine learning models more processors will be made to optimize for them (or use FPGAs).
Just found you, what a shame. You make great videos and gosh darn keep up the great work. The voice, the sarcasim and your word choice is just the bee's knees. Wishing you the best slick. Have a great day!
Even modern x86 CPUs use RISC under the hood. In stead they simulate x86 instructions with a hardware compatibility layer because the x86 instructions set has become so ridiculously complicated that implementing it directly into the base layer silicon was becoming a serious problem both for performance and circuit complexity.
You forgot NPUs. They will be used in Windows in the near future if you happen to have one inside your PC case. Taskmanager will also be able to recognize it.
I've gotten myself a Google Edge TPU USB stick, Coral Edge, which is super useful for some niche use cases. The power/energy efficiency makes it possible to let that run on battery too, interesting stuff
Fireship never ceases to amuse me -- not just entertain me, but actually make me laugh, like this thumbnail, how good is that? Dude you rock. You and Low Level Ed are epiccccc.
6:49 the game on screen is 東方星蓮船 ~ Undefined Fantastic Object, commonly referred to as Touhou 12 or UFO. The computer is displaying the title screen and the song that plays on that screen is a banger.
4:52 What kind of processing do you do on your voice? It sounds synthesized at times like "40-80." Is it from where you speed up the voiceover track? Or are you AI at this point? Or is any of this real? Am I real?
All these images to represent things are so funny. I'm sure this is how the government and investors have technology explained to them. So good, loved it.
man, you are so good at explaining things and combining memes. prodigy.
he uses QuantumAI to fack our minds, thats why
1:29 was indeed a glorious commentary of what we have become.
THIS. He's the man .
his that guy?
savant
That last "Trust me bro, it doesn't work" 🤣😂
When you introduce CPU, GPU, TPU, DPU, and QPU at a party, CPU says 'I'm versatile', GPU says 'I'm visual', TPU says 'I'm trending', DPU says 'I'm data-centric', and QPU? Well, it's quantum; it knows all the answers, but when you look at it, it just says 'Maybe...'
Maybe…
Nice try
So, schrodingus processor?0
When you compare CPU, GPU, TPU, DPU, and QPU to superheroes, CPU is like Batman, GPU is like Superman, TPU is like Flash, DPU is like Cyborg, and QPU? Well, it’s quantum; it’s like Doctor Strange, but when you ask it to save the world, it just says ‘There are 14 million possibilities…’
This is the most comprehencive CPU vs GPU vs TPU vs DPU vs QPU guide I have ever seen
The thing with Quantum Computers is that, basically, you can take a function, feed it literally every possible input in one go, retrieve every possible output simultaneously, and then sample from that statistically to tell you things about the function. It's incredibly niche, and super hard to actually build, and we're not even sure how many problems can actually be accelerated with it, but it's fun to work through the Math for.
the thing with quantum computers is, theyre complete fucking nonsense, and not even an actual idea beyond "what if unlimited power?"
Don't quantum computers also get super fucked by background noise (much like anything involving quantum physics)? This reduces their usefulness to basically running in specific spots of outer space, assuming it can survive all the chaotic background radiation with no effect on its function.
it's true that you feed it all inputs, but you actually just get one output, like a normal computer. And then there's some incredibly complex math to statistically correlate repeated outputs with the true answer you want.
@@ra2enjoyer708 they dont do anything, because they dont actually exist.
@@joankim123 yea, as far as I remember it would collapse the quantum function, but you can choose specific parameters to be matching the required values.
Basically, give me values for arguments of the function, which would result in the wanted result. Prolog 2.0 lol.
BRO! 6:16 was the MOST comprehensive visualization of matrix multiplication I've seen and I've watched several videos and tried reading several books because I've been self-studying and I came to the conclusion that I need a tutor or something but wow bravo. That actually made me excited to learn it! If you're not doing math videos can you point me in the right direction? Thank you and God bless!
Still no replies. That sucks. I like 3Blue1Brown's channel. He assumes you've gotten to Trig at least before you start with his earliest videos.
Yeah that was awesome
I don't even know what it is cause I'm not this smart about computers, but that visual was so easy to understand
Commenting to get notified if someone comes with the answer.
I would try organic chemistry tutor as his videos are generally really educational based on a variety of topics.
Seems like we have a family reunion here: CPU, the brainy one, GPU, the artist, TPU, the specialized smarty-pants, DPU, the traffic controller, and QPU, the one who says he's working, but you're always unsure because he lives in multiple realities!
the QPU is just the pot head
could not be better said
QPU uses a different work paradigm... it's known as WFH.
Rick and Morty, processing unit dimension?
Just thought about Neil Gaiman's The Sandman for some reason.
I asked the GPT to explain that video to my dog, he said,
Explaining this to a dog might be a bit challenging since dogs don't understand complex technical concepts. However, you can use simple actions and treats to represent these concepts:
1. **CPU (Central Processing Unit)**: Show your dog a treat (representing a task) and then give it to them. CPUs are like you, the treat giver, handling everyday tasks.
2. **GPU (Graphics Processing Unit)**: Take a ball (representing a fun task), throw it, and encourage your dog to fetch it. GPUs are like a friend who helps with fun and sporty tasks.
3. **TPU (Tensor Processing Unit)**: Place a puzzle in front of your dog and watch them solve it (or attempt to). TPUs are like a clever friend who's great at solving puzzles.
4. **DPU (Data Processing Unit)**: Show your dog their leash (representing a connection) and take them for a short walk. DPUs are like a friend who helps you connect with others and stay safe during walks.
5. **QPU (Quantum Processing Unit)**: Okay, this one's tricky! Pretend to be a magician and hide a treat in one hand. Then, show both hands and let your dog choose. Sometimes the treat appears, sometimes it doesn't (representing quantum unpredictability).
Remember, dogs won't grasp these concepts fully, but it can be a fun and interactive way to spend time with your furry friend! 🐶🐾
This is fucking underrated and brilliant
k@@satyamanu2211
I am crying 😭
"Furry friend"
Wow that's actually awesome!
Never thought Chat gbt is that useful
Multicore CPUs aren't the reason why we can run multiple applications at once. Operating systems could do that long before multicore CPUs were a thing. The technology which allows that is called process scheduling. The OS is basically switching between the running applications giving each of them a fraction of time (many times per second) to execute whatever code they are currently running. Having multiple cores just allows the OS to handle multiple processes more efficiently.
He means computing in true parrarel not context switching
@@kkounal974 He literally said at 3:02 that "modern CPUs also have multiple cores which allows them to do work in parallel, which allows you to use multiple applications on your PC at the same time". I'm all for benefit of the doubt, but anyone who doesn't already know about context switching is gonna leave this video thinking single core processors can't multitask.
Right but the difference between single core and now multicore processors is that instead of scheduling instructions of multiple applications on the same core, you can execute them on whichever core is available, provided the instructions don't require context.
until multicore came into reality, OS could on time share the slices of different threads, it truly became parallel processing only with the muitiple pipelines of multi-core architecture.
Was coming here to say exactly that lol
Also it's very important to distinguish between multiple processes and multiple applications.
Because a single application can (and often will) have multiple processes that if all running on one core still have to be time shared.
That's why the wizards have to ensure they use all cores if they want to get the best out of the CPU. Which of course means that you might be running multiple applications, that all use multiple cores. So the time sharing the OS does is still super important
Wow! This is by far the best layman video I've ever experienced on CPU variants.
Keep doing these whoever you are.
CPU: We need to talk. GPU: Already calculated what you're about to say. TPU: Already completed your words with predictions. DPU: Already sent the message. QPU: I was on the next conversation.
All that while the human is watching onlyfans😂
I like this
brother is just spamming chatgpt comments
@@Pandazaar smh it's still funny
QPU: I own your bitcoins now
You didn't mention DSP - digital signal processor. Specialized to run a single program continuously in a loop {input -> process -> output} with a strict time limit dictated by the sampling rate. Used extensively for stuff like audio, radio comm and oscilloscopes.
Yes because it's not used by a general purpose computer, even though technically it is still computing stuff
@@PrathamInCloudnot necessarily true, most general purpose computers have onboard audio chips that are doing A/D and D/A conversions, and that might involve some DSP. Lots of modern phones have dedicated DSP modules attached to their cameras and for dealing with microphone audio.
most likely because it is less general purpose (or cuz its not a "pu")
There are many smaller chips doing smaller stuff like for instance on a mac, Apple T2 Security Chip, Secure Enclave, Neural Engine, Image Signal Processor (ISP), Audio Processor, Touch ID Sensor, Thunderbolt / USB4 Controller, Display Engine, Storage Controller.
dafuq....another!!!!
An analogy I really liked for comparing cpu to gpu is trains vs cars, cars (cpu) are really fast for transporting one person as fast as possible, while trains (gpu) are faster than cars when transporting thousands of people as fast as possible, a cpu has really low latency for executing one instruction while gpus abuse simd operations to reduce the average latency over many parallel and similar instructions.
Thanks Zuc.
Yeah so which one is the car?
Don't forget that the train can only transport people and only transport them all to the same station while the car can transport all kinds of stuff and load on and off at any point.
that short animation just taught me how multiplying matrixes works
"highly trained wizards called software engineers" gotta be one of the most accurate sentences said in history
W
This man spitted forbidden facts
I'm a wizard Harry
@@LuisSierra42 I'm a Jizzard Harry
Hello again heisenberg!
For those who don't know, Heisenberg is the fresh account of the "NMRIH is a great source mod" which was banned for botting/violating RUclips TOS
-Same mannerisms, Over 800+ subs to only popular/viewed channels, popped up right when the previous account was banned about four months ago, this account is a bot that spams and like baits channel's comment sections for subs.
Its fascinating how graphics cards have come along
Initially for graphics rendering
Then crypto
Now Deep learning neural networks and Ai
Wow i wonder what they'll do next
OMG you're the best at explaining tech topics in a digestible, memeable format
You could also go over older deprecated units. The FPU (floating point unit) which is now included in most CPUs, the short lived physics cards which now have merged with graphics cards and the long lived sound cards, when CPUs were not powerful enough to do sound and other functions at the same time. As you can see most of these units died due to COUs becoming more powerful and taking over their jobs. That is because there is a fairly hard barrier for performance needed for things like sound unlike graphics where the quality rose with performance of these cards.
It's important to clarify on most architectures (especially CISC) one clock cycle usually isn't one instruction, only some very fast instructions can execute in one clock cycle but reading memory or division/multiplication can take several clock cycles.
Well there's also instructions per clock as well
Most of the common instructions actually finishes in one clock cycle these days, AMD and Intel have both worked really hard on that to reduce latency.
But you're right, some instructions might take multiple clock cycles.
On the other hand a core have multiple pipelines and can run multiple instructions simultaneously, filling pipelines with out of order execution, speculative execution and a second thread to ensure that execution resources are used even if one threads code doesn't use that resource in that moment.
Some instructions can be executed paralely in 1 cycle if they are not depependend, for example if there are 4 sequential addittions to 4 registers the cpu will execute all of them in one clock cycle because most Cisc CPUs have multiple ALUs so they can execute those operations simultanosly
Reading memory can take 1 clock cycle if it is in L1 cache
@@MI08SK Really ? Name the CPU which has a L1 latency of 1 cycle.
I think it's important to note that GPUs are much better at floating point operations which are essential to calculate co-ordinates for 3D rendering while CPUs are mainly good at integer operations - that's one of the reasons they co-exist and can't replace each other. I know the video explained some of it, but I'm surprised it didn't touch on the float-integer subject.
Also, how did nobody point out the literal madlad playing League of Legends with a gamepad at 5:01, lol?
This. I was thinking the same in both cases. xD
This is how history should be taught.
With Amouranth gifs hidden within the material? Agreed.
I think he read Oghma infinium
@@brain5853 🥵🥵🥵
you know . . . i've been having this conversation with my friends (who are algo pretty well educated i must say), and we all agree that the field of philosofy whom ussually were the ones given the task to analyze the facts studied by science and kinda digest it and present it to the regular foe in an understandable way has been less and less capable of doing this job and have been more and more disconected than ever (science and philosophy should be more interconected now than ever) sadly because the factual data presented by science, is becoming more and more complicated by the introduction of . . . well the "quamtum everthing" as we call it xd, so what happen when not even the philosophers can't understand what the fuck i going on the physics department, and to be fair, i dont blame them. we din't really get to answer at the end but i think this channel has something about that migth help with the current situation.
But when you really think about it, the air does have a taste@@josue1996jc
This channel is the best thing I have discovered on RUclips.
Correction: 1 Hz does not mean 1 instruction per second. Many types of instructions, like multiply/divide and memory operations, take multiple clock cycles to finish. 1 Hz just mean its clock runs once per second.
Edit: I'm not completely sure about this second one, but I think Neumann in von Neumann is pronounced NOY-min, not NEW-min.
That’s a tricky one as he is from Hungary and I’m not sure how they would pronounce it. But in German it is NOY-mann. But Americans tend to pronounce it NEW-mann and he lived there for a fair while so he was probably called that when he was there.
NOY-mann
The "a" is pronounced the same as in "Aha!". Short "a", long "n".
Just need to remember how "Freud" is pronounced 😉
This applies to "Euler" too...but not "Euclid" ☠️ (presumably due to cultural origin)
@@armyant7 Freud is easy. Try pronouncing Nietzsche
@@asdfssdfghgdfy5940My guess is "NEE-etch". Am I close?
Bro this has to be the best opening out of any RUclips video I have ever seen
1:26 this is the ideal computing output, you may not like it but this is how peak performance looks like
Any one have the source? for research purpose of course.
@@TriNguyen-xi8ji Amouranth, my dude.
Lol. I was looking for this. It seems the replay frequency is disabled, but I'd be willing to get that bit would have a nice spike 😏
lmao
Ah yes, the *binary logic gates-to-boobpic.jpg* pipeline
I watched this on 2x speed but could fully comprehend due to having background knowledge but also the fact that your explanation is soo good! In 4 mins I understood this whole thing, thank you soo much !!
3:03 Just to expand on this, CPUs don't strictly *need* multiple cores to run programs at the same time. What really allows this to happen is context switching and I/O.
Iff you record the states of all of the registers and memory of a program (i.e. the program context), and then restore the registers and memory to those states at a later time, the program will continue running like no time passed.
Operating systems use this nifty feature to constantly switch out the currently running program, and they do this so many times per second that the user feels like the programs are rhunning smoothly in parallel.
And they switch contexts either when a certain number of milliseconds passes, or when the current program thread does some I/O, since a thread waiting for I/O to complete does not need the CPU.
Well, that is quasi-parallel computing. For actual parallel computing, you do need multiple processors
@@Max_G4Exactly 👌
Finally the first mention of a QPU.
This was something I had to dig around to find an answer for in my third year of uni.
ALUs (arithmetic logic units) and FPUs (floating point units) also used to be a thing but now days are almost always part of the CPU (and are plenty powerfull so there is no need to add external ones).
FPU is replaced by AVX, there's even a separate instruction for floats summary and subtraction executing in just 2 cycles. The only case FPU is useful in is OS development (that shit with debug registers and stuff)
@@robertobokarev439AVX is just the contrived name of the ISA extension on x86 that allows vectorization/SIMD ops . FPU is the name of the module within the microarchitecture. These are totally different things.
Yeah I remember you could buy a FPU for the Amiga to accelerate it somewhat
PPU (Physics Processing Unit)
Protect this man at all costs! Thank you for this explanation
TPU is a brand-specific chip, made by Google for Tensor Flow. TPU is not a standardized term, but instead AI Accelerator would be used instead.
Most replayed timestamp of 1:25 proves that your audience is cult of "Man of culture".
RISC-V can, like ARM, be used for both high performance and low power consumption.
But is much much less mature than ARM
@@jacob2808Yes it's not as mature, but I personally see RISC-V is the way to go because of the long term viability, and the open nature being better for compatibility and usability
@breakfast7595 i respectfully disagree but won't write up a thesis at this hour lol
Here is a detailed breakdown of the video:
0:00 - 0:35 Introduction to Computing Magic
Fireship (the speaker) introduces the topic of computers and compares them to magic.
He explains that computers perform calculations by following a set of instructions, similar to how magicians perform illusions.
0:36 - 1:10 The Four PUs
Fireship introduces the concept of different processing units (PUs) in a computer: CPU, GPU, TPU and DPU.
He briefly mentions that CPUs are the most common type of PU.
1:11 - 2:20 History of CPUs
Fireship dives into the history of CPUs, starting with the Z1, the first programmable computer created by Konrad Zuse in 1936.
He explains that the Z1 was a mechanical computer and could only execute one instruction per second.
He then talks about the invention of the transistor in 1947, which revolutionized computers by allowing them to be electronic and much faster.
The video mentions the development of the integrated circuit in 1958, which allowed multiple transistors to be placed on a single chip, paving the way for modern CPUs.
In 1971, Intel released the first commercially available microprocessor, the 4-bit Intel 4004.
2:21 - 3:11 What CPUs Do
Fireship explains that CPUs are the central processing units of a computer, often referred to as the brain of the computer.
CPUs are responsible for running the operating system, executing programs, and managing hardware.
They are optimized for sequential computations that involve a lot of branching and logic, like route planning software.
Modern CPUs have multiple cores to allow them to perform multiple tasks simultaneously.
3:12 - 4:01 Limitations of CPUs
The video discusses the limitations of CPUs, mentioning that adding more cores is not always the best solution due to increasing power consumption and heat dissipation.
24 cores is mentioned as the upper limit for high-end CPUs at the time of the video (August 2023).
The video also briefly mentions the two major CPU architectures: x86-64 bit, used in most modern desktops, and ARM, used in mobile devices due to its better power efficiency.
4:02 - 5:22 GPUs Explained
Fireship introduces GPUs (Graphics Processing Units) as another type of PU.
GPUs are specifically designed for parallel computing tasks, making them ideal for tasks that require a lot of calculations at once, like video games and training deep learning models.
A single GPU core is slower than a single CPU core, but GPUs have many more cores, allowing them to perform massive amounts of calculations simultaneously.
5:23 - 6:22 Why Not Use GPUs for Everything?
The video addresses the question of why GPUs are not used for everything.
It explains that GPU cores are simpler than CPU cores and not well-suited for complex logic and branching.
CPUs are like Toyotas, versatile for many tasks, while GPUs are like rocketships, fast in a straight line but not ideal for all situations.
6:23 - 7:10 TPUs: Tensor Processing Units
Fireship introduces TPUs (Tensor Processing Units) designed specifically for machine learning tasks.
TPUs are similar to GPUs but optimized for tensor operations, such as matrix multiplication, which is essential for training deep learning models.
TPUs were developed by Google in 2016 to work with TensorFlow software.
7:11 - 7:59 DPUs: Data Processing Units
The video introduces DPUs (Data Processing Units) as the newest type of PU.
DPUs are designed for big data centers and handle data processing tasks like networking, routing, security, and data storage.
They are based on the ARM architecture and aim to take over data processing tasks from CPUs, allowing CPUs to focus on general-purpose computing.
8:00 - 8:25 Future of Computing: QPUs
Fireship briefly mentions QPUs (Quantum Processing Units) as a future technology.
Quantum computers use qubits that can be in multiple states simultaneously, unlike classical bits that are either 0 or 1.
This allows quantum computers to perform certain tasks much faster than classical computers.
The video mentions that quantum computers could break modern encryption methods.
they call me a YVPU -- youtube video processing unit -- because of my crippling addiction to watching youtube videos
Fun fact - prior to parallel processing on multiple cores, only OS's that could handle time-slicing could run multiple programs at what, to us sloooooow humans looked like in parallel. The Amiga had such an operating system, and for a while was used by NASA to handle comms with satellites in preference to Windows boxen, because Windows at that time could literally only handle one program running at a time. On my A1200, I once had a word processor going, whilst OctaMED was playing some music, a little video cartoon (very low res by todays standards, mind!) was playing in another and a couple of other things that I can't recall what they were after all these years. That pushed my Amiga (an A1200 with a 68030 processor) to its' limits, and some of the processes would go a tad slow now and then, but OctaMED was chugging along quite nicely through it all. Sigh. I loved the Miggy, it was a joy to use. I so wish Commodore hadn't shot themselves in every limb before shooting themselves in the head!
I liked the outout 😅 1:27
0:25 appreciate it
Are we all gonna ignore the guy playing League of Legends with a controller at 5:01? 💀
Was search if one noticed it 💀
I was thinking the same thing XD
The superior way to play games
@@HunterKiotoriIt's best to play with whatever you grew up with, in my opinion. The brain remembers. My cousin still treats his computers keyboard like a controller, while I'm still wrapping my head around LT&RTs, and how to switch between two buttons simultaneously.
It's a similar problem when switching musical instruments from, say a Guitar or Violin to a Keyboard.
@@lunyxappocalypse7071 I like both honestly, though it depends more on what game I'm playing
Your videos are really informative , funny 😂😂 and short. Loved it.❤
One downside of a QPU is that you need to stay aligned, you don't wanna know what happens when you're QPU misaligned
real
Guy playing League with controller literally killed me XD Good vid btw
The highly trained wizards, called software engineers 😂
Avada Angular js!!
@@LuisSierra42 What dark magic is this!? Expecto Reactus!
@@darkwoodmoviessmd fr fr
King, Warrior, Magician, Lover; we are definitely in the age of the magician right now
Now there's NPU....
Isn't that the same as TPU?
@@fuucaran nah, TPU is made for training ai. NPU is made for running it. but id rather have a multiperpose GPU for all this
id rather have a cpu to do all these tasks @NickH-o5l
At a very fast speed, trust me!!!! (I am being sarcastic)@@user-wq9mw2xz3j
Ai is bunk
And here I thought QPU stood for Quad Processing Unit
Yes, that's a thing, usually a GPU-like parallel processor. Raspberry Pis mentioned in the video have one as part of their VideoCore "GPU".
E.g. VideoCore IV has 12 cores, each processes 4 vectors per instruction cycle, with each vector being 4x32bit - so a 16-way 32bit processor.
Used for the OpenGL implementation, but can also be programmed manually, if you dare (assembly or some higher level languages though with lesser support).
It actually has decent branching support for a GPU, as you can mask away results for each vector element, and can branch completely if all your vector elements are fine with that branch.
The videos just keep getting better!
CPU to GPU: "You're pretty graphic, huh?"
GPU to TPU: "You tensor to be dramatic, don't you?"
TPU to DPU: "Always data-centered huh?"
DPU to QPU: "Quantum of nonsensical bragging!"
QPU: "I've processed this joke in a parallel universe where it's actually funny!"
Lmfao now that's what I call a good comment! Made my day xd
AI-generated joke, good one
the TPU is called the template processing unit. it is a chip specifically designed to speed up the compile times of c++ programs.
Ah, the case of running an compiler on the template meta programming instruction set TMPI.
Letting the compiler compile time compiler that runs on compile time.
It's my understanding that the T in TPU stands for tensor. Like a matrix but with n dimensions.
6:50 somehow, touhou manages to appear everywhere
Submit to the cult.
This intro was so simple , fun and creative explanation of what is a computer
Inside the Broadcom Videocore GPU there are 4 slices. Each slice contains a quad processing unit. Which is a quad threaded CPU risc CPU core with additional instructions for graphics operations. It runs a proprietary firmware based on Microsoft threads and is also responsible for the boot sequence on the raspberry pi.
What in the goddamn fuck are they cooking over there
6:49 Wow that is th12 ~ ufo. Not expecting this game since I thought nobody playing them these days.
You forgot the PPU (Picture Processing Unit) The old 80s 8 bit proto gpu. You'd typically find one on retro games consoles
These were responsible mainly for converting video memory data directly into analog-ready signals. In that sense, a PPU was technically more of a DAC than a GPU. On that topic, a GPU is really only a PPU if it has an analog video output of some kind.
0:39 Okay buddy, you have done it, blew it.
I think he’s gone crazy
The reason you can do multiple things at once isn't because of multiple cores, we could do it back with only a single cpu.
Your CPU does a tiny bit of computation at a time for multiple processes, and switches between them rapidly. Think of it like a chef cooking 20 meals at once.
The reason this isn't noticeable is largely due to the vastly slower I/O commands it has to wait for. You can think of this as frying. You can think of the CPU as cracking the egg, plating up, etc.
Single core gives an illusion of parallelism.
Multiple cores actually work in parallel.
@@rankarat is hyperthreading an illusion or actual parallelism?
@@rankarat
Do they though? They might share a memory controller which needs to fetch the data sequentially. Parallelism depends just on the expected latency of the output and can be achieved via interleaving.
A single cpu core doing multiple things at once is like you doing homework and eating food at the same time, you alternate.
A multi-core cpu doing g multiple things at once is like you doing homework and listening to music at the same time.
Modern x86 processors does run fairly similarly to RISC type of processor but it still does have a lot more instructions in case they are still being used (to not break compatibility).
RISC V will also be an interesting instruction set architecture but it is mainly just in microcontrollers and Raspberry pie type devices and not for personal and data center usage yet.
There are a lot of special processors made like for taking pictures/video on phones and encoder/decorder.
I would think with the rise of various machine learning models more processors will be made to optimize for them (or use FPGAs).
That cpu outputting amouranth was the funniest thing I’ve seen all day.
I'm sorry, but was that LEAGUE OF LEGENDS ON A CONSOLE CONTROLLER?
Aside from that, incredible video. Love everything you do, Fire.
thank you, this video is fire!
This is the most accurate descriptiong of the begining of Computer that i had ever seen
0:53 "built by Konrad Zuse in 1936 in his mom's basement" lol you're the best
Man the thumbnail is Fire 😂 you are a Legend 👍🏼
1:20 a cpu can do more than one instruction per 1hz it depends on transistor count
Not like that, it doesn't. 😅
@@warlockpaladin2261 google ipc
Just found you, what a shame. You make great videos and gosh darn keep up the great work. The voice, the sarcasim and your word choice is just the bee's knees. Wishing you the best slick. Have a great day!
Even modern x86 CPUs use RISC under the hood. In stead they simulate x86 instructions with a hardware compatibility layer because the x86 instructions set has become so ridiculously complicated that implementing it directly into the base layer silicon was becoming a serious problem both for performance and circuit complexity.
You forgot NPUs. They will be used in Windows in the near future if you happen to have one inside your PC case. Taskmanager will also be able to recognize it.
Central Processing Unit, Graphical Processing Unit, Trash Processing unit, Dead Processing Unit, Questionable Processing Unit
Ottimo video. Continua a pubblicare altre cose del genere.
I've gotten myself a Google Edge TPU USB stick, Coral Edge, which is super useful for some niche use cases. The power/energy efficiency makes it possible to let that run on battery too, interesting stuff
i wish i could get one here in russia. the thing costs a shit ton of money and it's only available through shady retailers
@@vinylSummer Probs got hardware/firmware malware aswell
Fireship never ceases to amuse me -- not just entertain me, but actually make me laugh, like this thumbnail, how good is that? Dude you rock. You and Low Level Ed are epiccccc.
1:26 I laughed so damnnn hard on this😂
6:49 the game on screen is 東方星蓮船 ~ Undefined Fantastic Object, commonly referred to as Touhou 12 or UFO. The computer is displaying the title screen and the song that plays on that screen is a banger.
Modern GPUs actually have tensor cores included in them, so they're basically a GPU and TPU combined
I'm addicted to this video... Watched it over 10 times, this week!😳
I think that I'm ready to get my degree after watching this video. My brain got literally overload with all that information at that pace.
It's time for us to get a degree in Wizardry 🤯
Man the starting was insane 😂, video is very helpful❤
sorry, Missed what you said from 1:26 to 1:32
Could you repeat that please..
Man I wish all my teachers could explain stuff so simple and with a healthy dose of humor; I might have become a rocket scientist if they did.
Hey can you please make a video about the difference between ARM and x86?
JNL XD
its just a design difference, like different design of houses
Dude I must say your Timing is impecable. 1:17
If you showed this video to someone 600 years ago they would start a new religion based off of it
Lol no need we are doing that now with ai Bitcoin and agi🎉 that's what all this is 😂
yeah and their godess would be amouranth
6:45
"Awaken, my masters!"
1:26 need the gif name or link for....reasons...
Amouranth
Pure Awesomeness. Thanks for posting this 😊
6:05 Yes pls, I have a RTX 4080 and that is what I plan to do with it. Please provide me a video on how to train AI, ty. I'm not even fuckin' joking!
That intro is fantastic! You just got a new subscriber! 😂
These videos are gold
CPU - Engineer
GPU - Labour
QPU - Dr strange
One of the most interesting video ever!
pluralize
@@cringy7-year-old5ones of the most interesting video ever!
Felt like, 1 hour documentary is compressed to 8 min video and still you didn't miss anything.
+ in meme format
1:32 output 😂
LMAO, the introduction was absolutely perfect
0:16 electrical? you mean electronic?
Electrical engineer is the correct term.
Electronically engineering is a subset of electrical engineering if I'm not mistaken
This was wine of the most entertaining videos I’ve seen in a while. The PC that were on fire had me dead 💀
I'm too ducking drunk for this
😂
Alcohol is poison but to each their own
@@nagggahaggaa really? tell me more please 🤔🤔
4:52 What kind of processing do you do on your voice? It sounds synthesized at times like "40-80." Is it from where you speed up the voiceover track? Or are you AI at this point? Or is any of this real? Am I real?
Don’t forget the apu
All these images to represent things are so funny. I'm sure this is how the government and investors have technology explained to them. So good, loved it.
Great vid, but I think you need one about FPGA's
Another straight-fire video 🔥🔥🔥