The general scheme of optimization is to find the costs of the different parts of the computer. Naïve users are apt to be unaware of such deceptive tricks. Furthermore, designers have been known to add special features to their products, whether in hardware or software, features which permit a specific benchmark to execute quickly but which do not offer similar advantages to other, more general computational tasks. For example, one system might handle scientific applications quickly, while another might play popular video games more smoothly. Often the measured machines split on different measures. Although benchmarking shows strengths, it may not help one to choose a computer. Low latencies can often be had very inexpensively.īenchmarking tries to take all these factors into account by measuring the time a computer takes to run through a series of test programs. For example, computer-controlled anti-lock brakes should not wait for the computer to finish what it's doing - they should brake. Computers that control machinery usually need low interrupt latencies, because the machine can't, won't or should not wait. This number is affected by a very wide range of design choices-for example, adding cache usually makes latency worse (slower) but makes other things faster. when the disk drive finishes moving some data). Interrupt latency is the guaranteed maximum response time of the system to an electronic event (e.g. Other factors aid speed, such as the mix of functional units, bus speeds, available memory, and the type and order of instructions in the programs being run.īut there are also different types of speed. Modern CPUs can execute multiple instructions per clock cycle, which dramatically speeds-up a program. However, this metric is somewhat misleading, as a machine with a higher clock rate may not necessarily have higher performance. This refers to the cycles per second of the main clock of the CPU. Generally cost is held constant, determined by either system or commercial requirements, and speed and storage capacity are adjusted to meet the cost target.Ĭomputer retailers describe the performance of their machines in terms of clock speed(usually in MHz or GHz). speed), although other considerations, such as size, weight, reliability, feature set, expandability and power consumption, may be factors as well. The most common goals in computer architecture revolve around the tradeoffs between cost and performance (i.e. 3 Computer architecture on a future horizon.The latter consideration is often referred to as microarchitecture. (2) Utilize existing implementation technologies (e.g., semiconductors) to build the best computer possible (best can be defined in many different ways as described in Design Goals). This definition reveals the two main considerations for computer architects: (1) Design hardware that behaves as the programmers think it should. Similarly, the frequency at which the system operates is not part of the architecture. For example, part of the architecture are the instructions and the width of operands manipulated by them. Architecture is often defined as the set of machine attributes that a programmer should understand in order to successfully program the specific computer (i.e., being able to reason about what the program will do when executed).(Such as memory, motherboard, electronic peripherals, or most commonly the CPU.) The less formal usage refers to a description of the requirements (especially speeds and interconnection requirements) or design implementation for the various parts of a computer.More general wider-scale hardware architectures, such as cluster computing and Non-Uniform Memory Access (NUMA) architectures.The design of a computer's CPU architecture, instruction set, addressing modes, and techniques such as SIMD and MIMD parallelism.There are several usages of the term, which can be used to refer to: In the same way as a building architect sets the principles and goals of a building project as the basis for the draftsman's plans, so too, a computer architect sets out the computer architecture as a basis for the actual design specifications. Computer architecture is the theory behind the design of a computer.
0 Comments
Leave a Reply. |