Smaller programs should improve performance

Source: Internet
Author: User

Computer ORGANIZATION and ARCHITECTURE designing for performance ninth EDITION

In this section, we look at some of the characteristics of and the motivation
For a reduced instruction set architecture. Specific examples'll be seen later in
This chapter. We begin with a discussion of motivations for contemporary complex
Instruction set architectures.

Why CISC
We have noted the trend to richer instruction sets, which include a larger number
of instructions and more complex instructions. Principal reasons have moti-
Vated this trend:a desire to simplify compilers and a desire to improve performance.
Underlying both of these reasons was the shift-to-hlls on the part of programmers;
Architects attempted to design machines this provided better support for Hlls.

It isn't the intent of this chapter to say that the CISC designers took the
Wrong direction. Indeed, because technology continues to evolve and because archi-
Tectures exist along a spectrum rather than in both neat categories, a black-and-white
Assessment is unlikely ever to emerge. Thus, the comments that follow is simply
Meant to point out some of the potential pitfalls in the CISC approach and to pro-
Vide some understanding of the motivation of the RISC adherents.

The first of the reasons cited, compiler simplification, seems obvious, but it
is not. The task of the compiler writer is to build a compiler that generates good
(Fast, small, fast and small) sequences of machine instructions for HLL programs
(i.e., the compiler views individual HLL statements in the context of surrounding
HLL statements). If There is machine instructions that resemble HLL statements,
This task is simplified. This reasoning have been disputed by the RISC researchers
([HENN82], [RADI83], [patt82b]). They has found that complex machine
Instructions is often hard to exploit because the compiler must find those cases
That exactly fit the construct. The task of optimizing the generated code to mini-
Mize code size, reduce instruction execution count, and enhance pipelining is much
More difficult with a complex instruction set. As evidence of this, studies cited
Earlier in this chapter indicate, the most of the instructions in a compiled program
Is the relatively simple ones.

The other major reason cited are the expectation that a CISC would yield smaller,
Faster programs. Let us examine both aspects of this assertion:that programs would be
Smaller and that they would execute faster.
There is advantages to smaller programs. First, because the program
Takes up less memory, there are a savings in that resource. With memory today being
So inexpensive, this potential advantage is no longer compelling. More important,
Smaller programs should improve performance, and this would happen in three ways.
First, fewer instructions means fewer instruction bytes to be fetched. Second, in a
Paging environment, smaller programs occupy fewer pages, reducing page faults.
Third, more instructions fit in cache (s).

Smaller programs should improve performance

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.