Jump to content

Everything I've learnt so far about GPU's is that they're a bazillion times better than CPU's in terms of speed. Other than software limitations like programs being rewritten, whats stopping us from getting rid of CPU's completely? I know many supercomputers rely on graphics hardware, like the titan. Even AMDs APU's seem to be rivaling intel's offerings on certain tasks just because it has a better igpu. 

 

*If this is in the wrong section, my apologies, but I think this is more a general question as it involves many areas like processors, graphics harware, software, pc's in general.

"Lost in the woods, but DAMN these trees are cool!"

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/
Share on other sites

Link to post
Share on other sites

Cause yes.

i5 4670k @ 4.2GHz (Coolermaster Hyper 212 Evo); ASrock Z87 EXTREME4; 8GB Kingston HyperX Beast DDR3 RAM @ 2133MHz; Asus DirectCU GTX 560; Super Flower Golden King 550 Platinum PSU;1TB Seagate Barracuda;Corsair 200r case. 

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1703536
Share on other sites

Link to post
Share on other sites

well the GPU is just for the graphics where as the CPU is everything else. the GPU may be faster but it may not be powerful enough to the same as a CPU is with the same tasks

Spoiler

 CPU: i5-6600k MOBO: ASUS Z170 Pro Gaming RAM: G.Skill 16GB 2800Mhz 15-15-15-35, GPU: Sapphire R9 290 SSD: Samsung 840 250GB HDD: Seagate Barracuda 2TB x2, Cooling: EK supremecy EVO ,EK-FC R9 290X with backplate, XSPC EX240 Crossflow & Alphacool UT60 240mm, XSPC D5 Bayres w/ Alphacool VPP655, 7/16-5/8 Compressions/Tubing, Noctua NF-F12 x4 PSU: Silverstone Strider Plus 850W Case: Nanoxia Deep Silence 1 http://valid.x86.fr/8g2m02

 

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1703539
Share on other sites

Link to post
Share on other sites

cause it's the 'central processing unit' which is everything, gpu is different, that is just for graphics.

 

lolol

"Sulit" (adj.) something that is worth it

i7 8700K 4.8Ghz delidded / Corsair H100i V2 / Asus Strix Z370-F / G.Skill Trident Z RGB 16GB 3200 / EVGA GTX 1080Ti FTW3 / ASUS ROG SWIFT PG279Q

Samsung 850 EVO 500GB & 250GB - Crucial MX300 M.2 525GB / Fractal Design Define S / Corsair K70 MX Reds / Logitech G502 / Beyerdynamic DT770 250Ohm

SMSL SD793II AMP/DAC - Schiit Magni 3 / PCPP

Old Rig

i5 2500k 4.5Ghz | Gigabyte Z68XP-UD3P | Zotac GTX 980 AMP! Extreme | Crucial Ballistix Tactical 16GB 1866MHz

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1703540
Share on other sites

Link to post
Share on other sites

cause it's the 'processing unit'

central processing unit.

i5 4670k @ 4.2GHz (Coolermaster Hyper 212 Evo); ASrock Z87 EXTREME4; 8GB Kingston HyperX Beast DDR3 RAM @ 2133MHz; Asus DirectCU GTX 560; Super Flower Golden King 550 Platinum PSU;1TB Seagate Barracuda;Corsair 200r case. 

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1703544
Share on other sites

Link to post
Share on other sites

central processing unit.

didn't bother putting the central bit. but i edited it

"Sulit" (adj.) something that is worth it

i7 8700K 4.8Ghz delidded / Corsair H100i V2 / Asus Strix Z370-F / G.Skill Trident Z RGB 16GB 3200 / EVGA GTX 1080Ti FTW3 / ASUS ROG SWIFT PG279Q

Samsung 850 EVO 500GB & 250GB - Crucial MX300 M.2 525GB / Fractal Design Define S / Corsair K70 MX Reds / Logitech G502 / Beyerdynamic DT770 250Ohm

SMSL SD793II AMP/DAC - Schiit Magni 3 / PCPP

Old Rig

i5 2500k 4.5Ghz | Gigabyte Z68XP-UD3P | Zotac GTX 980 AMP! Extreme | Crucial Ballistix Tactical 16GB 1866MHz

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1703553
Share on other sites

Link to post
Share on other sites

Everything I've learnt so far about GPU's is that they're a bazillion times better than CPU's in terms of speed. Other than software limitations like programs being rewritten, whats stopping us from getting rid of CPU's completely? I know many supercomputers rely on graphics hardware, like the titan. Even AMDs APU's seem to be rivaling intel's offerings on certain tasks just because it has a better igpu. 

 

*If this is in the wrong section, my apologies, but I think this is more a general question as it involves many areas like processors, graphics harware, software, pc's in general.

GPUs are not made for tasks that can not be parrallelised (pretty much every single program you use). Think of all the coin miners. They are using all the cores on the GPU to calculate as many hashes as they can at the same time. A CPU would just be doing 4 (or however many cores you have) at a time.

 

The code to create programs to utilise GPUs is incredibly different to the code written for normal programs that run on the CPU. New concepts and modifications to existing languages would need to be created to parrallelise the stuff we do today.

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1703560
Share on other sites

Link to post
Share on other sites

Very roughly put (and seriously, this is a strong simplification),

a GPU is extremely good at doing certain sorts of calculations

(roughly speaking, computations that can be very well parallelized),

but it is not very flexible in its capabilities.

A CPU on the other hand can do pretty much anything, but those

things which are GPU-friendly will run vastly slower on a CPU than

they do on a GPU. But if you have something that is not GPU-friendly

you still need a CPU. A CPU is much more flexible in what it is

useful for.

Aside from that, there also needs to be taken into consideration

that the code base for operating systems and pretty much every

program under the sun is written to run on CPUs. Porting those

systems would cost an absolutely ridiculous amount of money, and

this is leaving out the question of whether or not it would actually

make sense (i.e. if all computations an OS or a specific program

needs to do can be done on a GPU in such a fashion that it's

fast enough).

EDIT:

Ninja'd by yolo. ;)

BUILD LOGS: HELIOS - Latest Update: 2015-SEP-06 ::: ZEUS - BOTW 2013-JUN-28 ::: APOLLO - Complete: 2014-MAY-10
OTHER STUFF: Cable Lacing Tutorial ::: What Is ZFS? ::: mincss Primer ::: LSI RAID Card Flashing Tutorial
FORUM INFO: Community Standards ::: The Moderating Team ::: 10TB+ Storage Showoff Topic

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1703568
Share on other sites

Link to post
Share on other sites

The architecture of our OSs and software requires CPUs as they can perform any kind of task, basically. Also, their instruction sets and basic architecture are completely to those of GPUs.

 

Spoiler

CPU:Intel Xeon X5660 @ 4.2 GHz RAM:6x2 GB 1600MHz DDR3 MB:Asus P6T Deluxe GPU:Asus GTX 660 TI OC Cooler:Akasa Nero 3


SSD:OCZ Vertex 3 120 GB HDD:2x640 GB WD Black Fans:2xCorsair AF 120 PSU:Seasonic 450 W 80+ Case:Thermaltake Xaser VI MX OS:Windows 10
Speakers:Altec Lansing MX5021 Keyboard:Razer Blackwidow 2013 Mouse:Logitech MX Master Monitor:Dell U2412M Headphones: Logitech G430

Big thanks to Damikiller37 for making me an awesome Intel 4004 out of trixels!

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1703575
Share on other sites

Link to post
Share on other sites

Because if we used gpus to do the tasks the cpu does, then the gpu would be a cpu with integrated graphics, so yeah if this is to become a thing, then we are not getting rid of cpus, we are getting rid of discrete gpus, but I don't think it's going to happen

MSI Z87-GD65 - GTX 760 DirectCU II - i5 4670k @4.0GHz - 16GB Corsair Vengeance @1866 MHz

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1703582
Share on other sites

Link to post
Share on other sites

Still brings the question: if software was to rely more on a GPU for intensive tasks could we see a more understated CPU? Like just a small and slow integrated chip on the mobo and everything intensive relying on GPUs?

If powerful GPUs were more widespread wouldn't it make more sense to change the way software works to take advantage of it?

-------

Current Rig

-------

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1703594
Share on other sites

Link to post
Share on other sites

Still brings the question: if software was to rely more on a GPU for intensive tasks could we see a more understated CPU? Like just a small and slow integrated chip on the mobo and everything intensive relying on GPUs?

If powerful GPUs were more widespread wouldn't it make more sense to change the way software works to take advantage of it?

This might be starting to happen with AMDs APUs and Intel improving their

integrated graphics, but if that shift really does come, it will be a very

slow process IMO, because rewriting your software for this approach will

in all likelihood require a very serious financial investment, and it only

makes sense once a large enough target base of machines with the required

capabilities is out in the world.

BUILD LOGS: HELIOS - Latest Update: 2015-SEP-06 ::: ZEUS - BOTW 2013-JUN-28 ::: APOLLO - Complete: 2014-MAY-10
OTHER STUFF: Cable Lacing Tutorial ::: What Is ZFS? ::: mincss Primer ::: LSI RAID Card Flashing Tutorial
FORUM INFO: Community Standards ::: The Moderating Team ::: 10TB+ Storage Showoff Topic

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1703616
Share on other sites

Link to post
Share on other sites

There are a couple of really important reasons actually why a GPU can't currently do it, but in theory it could in the future:

- The GPU is a vector processor, that is all the cores take one big array and run a series of small programs on it. That suits a very narrow list of activities (like graphics and running the same hash) but its not a decent way to parallel process in the general sense. Performance on a normal program would be terrible with a GPU.

 

- The GPU is lacking key hardware features that separate programs from each other. An operating system requires these hardware features to ensure programs can't interact with each other.

 

- The GPU lacks general interrupt support for dealing with the other hardware in a computer.

 

- In general the GPU is missing many of the features of a CPU that are necessary to multitask programs and be an OS beyond just memory isolated and translation.

 

The best way to think about a GPU is its a coprocessor, its more like a big bank of FPUs that you can run simple programs on rather than actual CPUs. Its the reason why its so power efficient is that it can't do very much and it needs the CPUs help to do the rest.

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1703631
Share on other sites

Link to post
Share on other sites

Another thing, is not mentioned, is that GPU's can't do logic. Well they CAN but it's very taxing.

For example, if a GPU does an if-else condition, it will process BOTH cases, THEN pick the correct one.

Example (shader level):

if (postIsLiked == true) {   likePost();} else {    formatSystemAndReinstall();}
Both calls: "likePost();", and "formatSystemAndReinstall();", would be fully executed. THEN it will pick the right path.

So the way they do it in graphics, is that they really need to think about it, or find work around which might not work in all cases, but most cases.

Now, it must be said, that today's GPUs are a lot better in logic operation, and isn't as much taxing, but it's has an impact regardless.

A CPU can process a whole set of if statements in a fraction of milliseconds.

Things like that as the reason why AI is done on the CPU, and not the GPU.

Now in a perfect world, a GPU CAN support the logic structure of the CPU, but if they do, the CPU would be, as I am told by a computer engineer, that it would be either larger than a silicon wafer, or even if you shrink it, would be extremely expensive, as you take most of the silicon wafer, you increase the chance of faults on the end product. For example, if you have a wafer with 300 processors, and an area something screwed up during the production of the processors, well only 5 or 10 are faulty. In this case, it would be so big, that let's say you can only have a handful, well when half of it faulty.. your yield is low.

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1703992
Share on other sites

Link to post
Share on other sites

The reason this is, is, that, in the current system architecture of computers, instructions flow from the CPU to other components. In the case of the GPU, for an instruction to reach it, it must first go from being read from RAM, through northbridge, then the IMC of the CPU, then the instruction gets processed by the CPU, then that instruction will beckon the help of the GPU, which the instruction THEN gets sent to the GPU (after being transcoded from said CPU ISA to DirectX/OpenGL/OpenCL/name-a-graphical-API-flavour) through latency-heavy PCIe lanes (that may be saturated with other information), into latency-heavy GDDR5 RAM, then sent to the GPU's scheduler, then to a graphic core. Though it doesnt end there; then the GPU core must not wait for ONE set of data to arrive, but MULTIPLE, all through the same latency-heavy bus (PCIe, GDDR5), and THEN it is processed.

 

I think the OP meant: Get rid of the CPU. So the GPU would take the CPU task, and have direct access to the system RAM, like the CPU.

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1704009
Share on other sites

Link to post
Share on other sites

- let me drop some knowledge -

Excellent post. thumb.gif

And Re: the Cell processor: I would have been extremely curious to see that

concept be applied to "normal" computers and see how it would have fared,

been wondering that every since it came out.

BUILD LOGS: HELIOS - Latest Update: 2015-SEP-06 ::: ZEUS - BOTW 2013-JUN-28 ::: APOLLO - Complete: 2014-MAY-10
OTHER STUFF: Cable Lacing Tutorial ::: What Is ZFS? ::: mincss Primer ::: LSI RAID Card Flashing Tutorial
FORUM INFO: Community Standards ::: The Moderating Team ::: 10TB+ Storage Showoff Topic

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1704037
Share on other sites

Link to post
Share on other sites

There are many reasons why this will not happen for a very long time (if it will ever happen). People above have stated numerous reasons. GPU's can't perform if logic very efficiently, the latency issues with current gpu architecture etc.

 

One of the main issues with the concept comes down to how parallel an application can be made. And it turns out this is an extremely difficult thing to do. We have been trying push all applications to make use of multiple cores for the last 10 years now with not a huge amount of success. This issue brings up Amdhal's law. This show us the theoretical speed up that can be achieved by using multiple cores on the parallel components of a application. Take for example if we want to compute:

first instruction)     m = 1+10;second instruction)    m = m+1;

You cannot run the second instruction until you run the first instruction or you will get two different results. This means that you cannot make efficient use of multiple cores in this example. If you can't increase the proportion of parallel code in your application then you won't benefit from having more cores.

 

972px-AmdahlsLaw.svg.png

Rig: i7 2600K @ 4.2GHz, Larkooler Watercooling System, MSI Z68a-gd80-G3, 8GB G.Skill Sniper 1600MHz CL9, Gigabyte GTX 670 Windforce 3x 2GB OC, Samsung 840 250GB, 1TB WD Caviar Blue, Auzentech X-FI Forte 7.1, XFX PRO650W, Silverstone RV02 Monitors: Asus PB278Q, LG W2243S-PF (Gaming / overclocked to 74Hz) Peripherals: Logitech G9x Laser, QPad MK-50, AudioTechnica ATH AD700

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1704141
Share on other sites

Link to post
Share on other sites

CPUs aren't CPUs because of their place in the system, but because of their design. IF GPUs entirely replaced CPUs, all we'd have is a GPU.

I know that, what I meant is that since a gpu simply can't do everything the cpu does (afaik) we would need to adapt a gpu to do that stuff, and at that point it would essentially be a cpu with integrated graphics, and it seems to me that it would be simpler to just increase the power of integrated graphics in cpus if we wanted to go that route.

MSI Z87-GD65 - GTX 760 DirectCU II - i5 4670k @4.0GHz - 16GB Corsair Vengeance @1866 MHz

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1704142
Share on other sites

Link to post
Share on other sites

Because without a brain, eyes can't do anything?

 

I think of the CPU as being (most of) the brain, the MOBO as the nervous system, and GPU as part of the eyes since displays are what shows the image. If we're going to add RAM, storage, PSU, fans, optical drives, etc., then we're getting way too complicated.

 

Edit: I guess this would be a "layman's way" of explaining PCs and other PC-related stuff, like phones and tablets.

| CPU: An abacus | Motherboard: Tin foil | RAM: 2 Popsicle sticks | GPU: Virtual Boy | Case: Cardboard box | Storage: Cardboard | PSU: 3... Er... Make that 2 hamsters | Display(s): Broken glass | Cooling: Brawndo | Keyboard: More cardboard | Mouse: Jerry | Sound: 2 Cans of SpaghettiO's |

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1707221
Share on other sites

Link to post
Share on other sites

We still use cpus for video rendering and it helps take a bit of load off of the gpu imo.

Hello and Welcome to LTT Forum!


If you are a new member, please read the rules located in "Forum News and Info". Thanks!  :)


Linus Tech Tips Forum Code of Conduct           FAQ           Privacy Policy & Legal Disclaimer

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1707423
Share on other sites

Link to post
Share on other sites

Because without a brain, eyes can't do anything?

 

I think of the CPU as being (most of) the brain, the MOBO as the nervous system, and GPU as part of the eyes since displays are what shows the image. If we're going to add RAM, storage, PSU, fans, optical drives, etc., then we're getting way too complicated.

 

Edit: I guess this would be a "layman's way" of explaining PCs and other PC-related stuff, like phones and tablets.

 

Kinda but not really. I think a better analogy would be to compare it to a cpu with integrated graphics (it doesn't need to be integrated but helps as they are both on the same chip).

 

The igpu would be the part of the brain that controls vision (not the eyes themselves). The part of our brain that controls vision has to do loads of work at one time (image processing is parallel) but it is unconscious to us (we don't have to think in order to see) so it is a different sort of power. What makes it powerful is the fact that it can do loads at one time but again it's a different sort of power as it is just doing the same thing over and over but with loads of data. This is SIMD, single instruction multiple data. The instruction is the image processing calculation and the multiple data is all the information our eyes take in on the cells of our retina.

 

The cpu would be the part of the brain that allows us to be conscious and thinking, i.e. we can think and we are very good at logic but can only really thing about one thing at a time (serial processing). As we know our conscious thought is extremely powerful and flexible but it still only allows us to think about doing one thing at a time. This kinda corresponds to SISD, single instruction, single data. The instruction might be listening and the data would be a person. As you know if we try to listen to two people at the same time we have to jump back and forth between listening to both people really quickly to try catch all of the info.

 

Both vision and consciousness each require a lot brain power but they are very very different and no one part of the brain can perform both jobs. This is why a gpu could never replace a cpu. This analogy isn't perfect but it is the best way I can explain it.

Rig: i7 2600K @ 4.2GHz, Larkooler Watercooling System, MSI Z68a-gd80-G3, 8GB G.Skill Sniper 1600MHz CL9, Gigabyte GTX 670 Windforce 3x 2GB OC, Samsung 840 250GB, 1TB WD Caviar Blue, Auzentech X-FI Forte 7.1, XFX PRO650W, Silverstone RV02 Monitors: Asus PB278Q, LG W2243S-PF (Gaming / overclocked to 74Hz) Peripherals: Logitech G9x Laser, QPad MK-50, AudioTechnica ATH AD700

Link to comment
https://linustechtips.com/topic/128095-why-do-we-still-use-cpus/#findComment-1707487
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×