this post was submitted on 19 Jun 2024
714 points (98.6% liked)

Technology

59106 readers
3944 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] sugar_in_your_tea@sh.itjust.works 1 points 4 months ago (1 children)

Yup. In general:

  • CISC - complex instruction set - you'll get really exotic operations, like PMADDWD (multiply numbers, then add 16-bit chunks) or the SSE 4.2 string compare instructions
  • RISC - reduced instruction set - instead of an instruction for everything, RISC requires users to combine instructions, and specialialized extensions are fairly rare

Modern CISC CPUs often (usually? Always?) have a RISC design behind the CISC interface, it just translates CISC -> RISC for processing. RISC CPUs tend to have more user-accessible cores, so the user/OS handles sending instructions. CISC can be faster for complex operations since you have fewer round-trips to the CPU, whereas RISC can handle more instructions simultaneously due to more cores, so big, diverse workloads may see better throughput. Basically, it's the old argument of bandwidth vs latency.

[–] areyouevenreal@lemm.ee 1 points 4 months ago (1 children)

Except modern ARM chips are actually CISC too. Also microcode isn't strictly RISC either. It's a lot more complex than you are thinking.

There are some RISC characteristics ARM has kept like load-store architecture and fixed width instructions. However it's actually more complex in terms of capabilities and instructions than pretty much all earlier CISC systems, as early CISC systems did not have vector units and instructions for example.

Yeah, they've gotten a bit bloated, but ARM is still a lot simpler than x86. That's why ARM is usually higher core count, because they don't have as many specialized circuits. That's good for some use cases (servers, low power devices, etc), and generally bad for others (single app uses like gaming and productivity), though Apple is trying to bridge that gap.

But yeah, ARM and x86 are a lot more similar today than they were 10 years ago. There's still a distinct difference though, but RISC-V is a lot more RISC than ARM.