Talk:Reduced instruction set computer

(Redirected from Talk:Reduced instruction set computing)
Latest comment: 1 month ago by Resukalt in topic Merge proposal
Former featured articleReduced instruction set computer is a former featured article. Please see the links under Article milestones below for its original nomination page (for older articles, check the nomination archive) and why it was removed.
Article milestones
DateProcessResult
December 15, 2003Featured article candidatePromoted
January 8, 2005Featured article reviewDemoted
Current status: Former featured article

Problems with the lead edit

The lead presently says:

Reduced instruction set computing, or RISC (pronounced 'risk', /ɹɪsk/), is a CPU design strategy based on the insight that a simplified instruction set provides higher performance when combined with a microprocessor architecture capable of executing those instructions using fewer microprocessor cycles per instruction. A computer based on this strategy is a reduced instruction set computer, also called RISC. The opposing architecture is called complex instruction set computing (CISC).

There's a few problems here besides the issue raised at Talk:Reduced instruction set computer#Requested move 10 May 2017:

  • To say that RISC is a CPU design strategy could be misunderstood by laypeople as self-contradictory given that a CPU is understood to be a part of a computer, yet the "C" in "RISC" means "computer". A person familiar with the topic would understand that whilst some sources describe RISC as such, its because of the inadequacies of the language in reconciling how the idea was originally framed and how it is framed today. RISC is better described as a type of computer.
  • "Microprocessor architecture" implies that RISC is intrinsically linked to microprocessors. Whilst that's the popular narrative, it's wrong. The first RISC was the IBM 801, and it wasn't a microprocessor.
  • "Microprocessor architecture" is linked to "microarchitecture"; "microarchitecture" is not a contraction of "microprocessor architecture".
  • The use of cycles per instruction (CPI) to mean instruction latency is completely wrong. To speak very generally, CPI is an average of all measured instruction latencies.
  • "Microprocessor cycles per instruction" is meaningless, there's no need to qualify "CPI" with "microprocessor".

I've improved the lead as best I can, but given the complexity of the topic, it's probably still be inadequate. 50504F (talk) 07:35, 26 May 2017 (UTC)Reply

50504F, Thank you, those improvements made the lead much better. I agree that RISC not just a "design strategy", but a more-or-less objective type of hardware that can be distinguished from other types of hardware no matter what "design strategy" was used to develop it.
I'd like to suggest 2 further improvements:
* Alas, the current lead claims RISC has something to do "with a small ... set of instructions," a common misunderstanding that is specifically called out in the reduced instruction set computer#Instruction set philosophy section and the reduced instruction set computer#Comparison to other architectures section.
* I feel that RISC is better described as a type of CPU, rather than a type of computer. In my view, the things that make RISC different than the alternatives (TTA, CISC, DSP, etc.) only affect the CPU and have little or no effect on the other parts of computer architecture -- main memory, I/O, caching, etc. -- or other parts of a physical computer -- the form factor, the power supply, whether it has a single-chip CPU (microprocessor) or a discrete-transistor CPU or something else, etc.
--DavidCary (talk) 22:06, 12 January 2021 (UTC)Reply
I think the lead is in reasonable shape now and I am removing the {{Technical}} tag. ~Kvng (talk) 16:12, 15 May 2023 (UTC)Reply

Point of "Use of RISC architectures" section? edit

This seems like a grab-bag of different RISC architectures with arbitrary categories. Why are gaming systems considered low-end? — Preceding unsigned comment added by Indolering (talkcontribs) 03:38, 22 March 2021 (UTC)Reply

I guess the theory is to indicate where RISC is being used, for the benefit of people who think x86 rules the world, but it is, indeed, a not-well-organized grab-bag. It's not particularly up-to-date, with several of the examples no longer applying, and some items just mention instruction sets without giving current examples where it's used.
At this point, the currently relevant RISC architectures, as I see it, are:
  • ARM, obviously, from microcontrollers to supercomputers;
  • SPARC, which is still being sold in servers;
  • Power ISA, which is still being sold in servers;
  • perhaps others used in embedded applications. Guy Harris (talk) 06:15, 22 March 2021 (UTC)Reply

Removed ACE bits edit

It is a common game to claim (computer X is the first risc) based on some simplified definition of "what is risc?". The book making the claim that ACE is RISC is visible on Google Books here (for me at least, YMMV).

The (relatively short) article in question defines risc in a somewhat hand-waving manner, saying "no one at the time would agree with this definition" which is (top of page 199) essentially of "microcode slows execution, and long pipelines are slow and have interlocks". That is a rough description I could find much to agree with.

Then he attempts to link the two with the arguments that in ACE, "ease of programming had knowingly been sacrificed to speed", followed by sections noting it lacked microprogramming, that it could be simplified using interpreters, and then concluding "We can indeed conclude that the ACE is a RISC machine in the sense of having an architecture heavily influenced by the design of the computer".

None of these statements are part of the definition he posts. This is not surprising, as none of the definitional ideas even existed and would take the better part of a decade to emerge. The fact that it didn't have them is akin to claiming that horse carriages are really ICE automobiles because engines didn't exist at the time and the designers were all interested in speed.

If I sound dismissive, I am. Regardless of Turing's original desires, ACE emerged as a pretty bog-standard drum machine. That is by no means a denigration - it's bog standard because everyone used the concepts he helped develop. But the claim that it is a proto-RISC fails by the author's own definition as no machines of the era had the very features he quotes as definitional.

I'm not averse to new claims for first, but I am rather averse to the sort of hand-waving, wooly-headed argument presented in this article and the claim demands much better support in order to deserve being included here. Maury Markowitz (talk) 14:30, 4 January 2022 (UTC)Reply

Merge proposal edit

I've been thinking that it would make sense to merge the CISC page into the RISC page. The problem is that the RISC and CISC page have a lot of overlap and mostly cover the same history and information, so they are largely redundant (when they aren't contradictory). As WP:OVERLAP says, "Remember, that Wikipedia is not a dictionary; there does not need to be a separate entry for every concept. For example, "flammable" and "non-flammable" can both be explained in an article on flammability." This is the case with RISC and CISC.

I'm not saying that CISC is unimportant, of course. But since CISC is essentially defined in opposition to RISC, you can't really discuss one without the other. There isn't a lot to say about CISC independent of RISC. I think that combining the pages would improve both of them. The CISC page is weak on citations so I was looking into improving it, but I realized that I would end up duplicating most of the RISC material and combining the pages would make more sense. KenShirriff (talk) 21:22, 11 December 2023 (UTC)Reply

So would the page still be "Reduced instruction set computer", or would it be something that mentions both RISC and CISC? Guy Harris (talk) 21:33, 12 December 2023 (UTC)Reply
Good question. "Reduced Instruction Set Computers and Complex Instruction Set Computers" seems way too wordy but "RISC and CISC" is a bit obscure. I was thinking of adding a section on CISC to the current RISC page. That may make CISC seem less important, though. What do you think? KenShirriff (talk) 00:28, 13 December 2023 (UTC)Reply
That might work. If complex instruction set computer redirects to the new section, boldfacing the first instance of that phrase in that section might suffice; if it redirects to the article as a whole, boldfacing the first instance of that phrase in the lead might suffice. Guy Harris (talk) 07:01, 5 January 2024 (UTC)Reply
  • Support and I'd prefer to keep the current title with discussion of both in the lead and redirects from Complex instruction set computer etc. CISC is the less important term and covers a broad variety of processor designs. ~Kvng (talk) 16:04, 15 December 2023 (UTC)Reply
  • Support CISC is a catch-all term for anything which isn't RISC, so it makes sense to put them together. Murray Langton (talk) 14:44, 9 January 2024 (UTC)Reply
  • I think that these two articles could maybe even be merged into Instruction_set_architecture with separate headings. Resukalt (User talk) 16:18, 26 February 2024 (UTC)Reply

Don't merge edit

I recommend based on information, I think the two articles should not be merged and left as they are. Happyevengood (talk) 13:17, 16 December 2023 (UTC)Reply

Votes for or against a merge proposal are usually best put in the section containing the proposal, rather than in sections of their own, with votes for saying Support or Merge or something such as that and votes against saying Oppose or Don't merge or something such as that. See Kvng's vote for the proposal as an example. That way, all the discussion and voting is kept together. Guy Harris (talk) 19:15, 16 December 2023 (UTC)Reply