• zalgotext@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    19
    arrow-down
    1
    ·
    9 months ago

    GPUs are ridiculously, ludicrously good at doing an absolute shit-ton of very simple, non-dependent calculations simultaneously. CPUs are good at… Well, everything else. So yes, you do still need the CPU.

    • mindbleach@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      10
      ·
      9 months ago

      GPUs are pretty good at doing half a shit-ton of mildly complex calculations simultaneously. And even the things they’re not so good at, they can still do in parallel.

      Remember that GPU ray-tracing didn’t start with bespoke hardware. The first Nvidia card celebrated by path-tracing nerds was the GTX 480 from 2010. “GPGPU” shenanigans began even before CUDA. People were coercing work out of video cards by converting data to colors. You ever worry about the middle bytes of a long int getting saturated? It’s not good times.

      Couple that with how good design practices have pushed toward stream processing, just to make good use of many-core CPUs, and the question is worth asking. Especially when true parallel hardware is easier to scale up, costs way less per flop, and won’t run into looming obstacles in SRAM size.

      I guess the hybrid alternative path is just Xeon Phi.

      • CausticFlames@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        7
        arrow-down
        1
        ·
        9 months ago

        GPU’s as the ONLY compute source in a computer cannot and will not function, mainly due to how pipelining works on existing architectures (and other instructions)

        You’re right, in that GPU’s are excellent at parallelization. Unfortunately when you pipeline several instructions to be run in parallel, you actually increase each individual instruction’s execution time. (Decreasing the OVERALL execution time though).

        GPU’s are stupid good at creating triangles effectively, and pinning them to a matrix that they can then do “transformations” or other altering actions to. A GPU would struggle HARD if it had to handle system calls and “time splitting” similar to how an OS handles operating system background tasks.

        This isnt even MENTIONING the instruction set changes that would be needed for x86 for example to run on a GPU alone.

        TLDR: CPU’s are here to stay for a really really long time.

        • mindbleach@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          3
          arrow-down
          2
          ·
          9 months ago

          … why would you run x86?

          Nevermind that “cannot function” is not the same thing as “slow.” Every reply has been a technically-proficient attack rather than sincere consideration of what is possible. The article is about rearranging the established relationship of CPU and GPU - the root comment asks “at some point.” An all-caps dismissal of running existing software is a tell.

          We’re not talking about binaries you already have. We’re not necessarily talking about general software. This is about future games. We’re not even talking about a system with no CPU - the root comment describes reducing the importance of components. Crucial pieces of discrete hardware in past computers live on in modern motherboards as a tiny fraction of some chip.

          Even CPUs themselves are experimenting with heterogeneous core layouts, where an itty-bitty Atom or ARMv7 handles the basics, while some wildly different silicon either sits idle or does all the work. The difference between that and an APU chewing through SPIR-V might be less than you think.

          • CausticFlames@sopuli.xyz
            link
            fedilink
            English
            arrow-up
            3
            ·
            edit-2
            9 months ago

            You are the one who brought up the question of even needing the CPU at all. Also, It wasn’t meant to be an attack. Just an explanation as to why you’d still need a CPU.

            why would you run x86

            All I meant was a large portion of software and compatibility tools still use it, and our modern desktop CPU architectures are still inspired from it. Things like CUDA are vastly different was my point

            But if what you meant by your original comment was to not do away with the CPU, then yes! By all means, plenty of software is now migrating to taking advantage of the GPU as much as possible. I was only addressing you asking “at some point do we even need the CPU?” - the answer is yes :)

      • Socsa@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        2
        arrow-down
        1
        ·
        9 months ago

        Lol, there are a lot of people in here who got their digital design education from Linus Tech Tips downvoting you.

        • mindbleach@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          2
          ·
          9 months ago

          It’s a whole mess of legitimate reasons we’re not already doing it (which I know), misapplied to ‘so it can never make sense,’ with a tone of ‘how dare you.’

          The obvious example application ages ago would’ve been a console - y’know, specialty hardware with bespoke software, optimized for maximum oomph at minimum up-front cost. But everything since the PS3-360-Wii generation has been a whole-ass computer judged on its ability to handle multiplatform games. Even your damn phone is expected to run Fortnite. Everything’s gotta have an everything.

          Maybe people are no longer used to considering how computing could get weird.

          Maybe they don’t recognize how weird it already got.