All posts by Mr Stratton

Computing teacher and a PT at Coltness High School.

Factors that effect Computer Performance.

Lots of things effect computer performance. We were looking at a few of them in today’s lesson.

Different types of RAM can have a big impact on the performance of a computer system. Why? Data has to be moved in and out of RAM, the quicker this data can be accessed and moved the faster the processor can get to processing it. Cache improves performance, this high speed SRAM is located close (often in) the processor. It allows the contents of RAM to be stored close to the processor, the processor check here for the next instruction, if its not found then it checks RAM. Although this sounds a bit haphazard, cache can improve the performance of the machine quite significantly.

Then we recapped how RAM effects performance.

  • More RAM means less need to use virtual RAM, therefor an increase in speed.
  • Cache allows for faster access then when the processor gets a cache hits the contents are transferred quicker. there are different types of cache.
  • Increases in RAM speed has failed to keep up with the increase in RAM capacity but different RAM has different clock speeds and even different ways of access.

We went on to look at how the speed and type of a peripheral can effect performance and that they require an interface. The interface allows the CPU to talk to the peripheral. (some brief notes below but we will look at this in more detail in a future post)

Functions of an Interface

  • Buffering – holding data temporarily while in transit between the CPU and peripheral.
  • Data Conversion – changing data into a form the CPU can understand and vice-versa – protocol conversion e.g.
    • serial to parallel
    • voltage conversion
  • Handling Status Information – to show whether the device is ready to receive or send data e.g. is the printer ready or out of paper.

A big thank you to Mr. Allen in Airdrie Academy for letting me cut up and publish his revision notes – AA Computer Performance

Scary Software Development Story

All the way through the Software development unit I have tried to instill in you, the idea that programming must be carried out in a rigorous manor. This story shows how important it is that all aspects of software development come together.

The failing may have been a simple HCI problem, if the dashboard had reported the error and asked the driver to restart the car when safe, then all may have been right. Or was is a problem with how the car handled the ice in the first place? In truth the answer may never be known and the error may be unrepeatable, good forward thinking design should be minimise these errors.

Computer Performance Introduction

This topic is all about computer performance and the things that effect it. It is easy to say that  you know how things like, RAM, CPU, GPU, etc effect the performance of a computer. But WHY do they effect the performance?

Here is the section from the arrangement documents that cover this booklet.

  • Description and evaluation of the following measures  of performance: clock speed, MIPS, FLOPS, and application based tests
  • Description of the effect the following factors have on system performance: data bus width, use of cache memory, rate of data transfer to and from peripherals
  • Description of current trends in computer hardware, including increasing clock speeds, increasing memory and backing storage capacity

Today was all about benchmarks. We established early on in the lesson that clock speed was not a good way of comparing computing performance. A computer with a 3GHz CPU may not be as fast a 2GHz, why? well the 2GHz CPU may be a multicore processor or the computer may have faster RAM, more cache etc.

  • The first benchmark we looked at was MIPS , however different instructions require different numbers of clock cycles and there is no standard for measuring MIPS.
  • Floating Point Operations Per Second (FLOPS), this is a better measure of performance as floating point multiplications are basically the same for each processor.
  • Application benchmarks, these vary from application to application. It may be for example, how long does it take a package to render a special effect on a photograph. For games  machines we often quote Frames Per Second (FPS) benchmarks. A modern game is set to a pre-set graphic mode and the number of frames rendered per second is then recorded, example. Specialist benchmarking software can also be used to test the whole system, this is the software demoed in class.

Here is the list of the Top 500 computers in the world. Did you notice that the comparison was Petaflops?

Answers for Homework for the 14th Dec

  • State the purpose of registers in a microprocessor. (1)
    • Registers are temporary storage locations on the processor which can be used to store data or instructions required by the CPU.
  • Describe the purpose of two signals found on the control bus. (2)
    • Read – signals a memory read operation is to take place
    • Write – signals a memory write operation is to take place
    • Clock – synchronises the signals being passed in and out of the processor
    • Reset – clears all registers and busses of data
    • Interrupt – tells the processor to save current process, run interrupt process until completed, then resume its activities (can be ignored)
    • NMI – tells the processor to save current process, run interrupt process until completed, then resume its activities (cannot be ignored)
  • An IT manager believes that a Pegasus computer with a 700MHz processor is faster than a Hercules computer with a 650MHz processor. Suggest two reasons why he may be incorrect. (2)
    • Hercules computer may:
    • have larger data bus (so can transfer more bits per clock cycle)
    • have more RAM so can store more programs in fast-access memory
  • What is the purpose of a control unit in a CPU? (1)
    • A control unit manages all the other parts of the processor and makes sure that the program instructions of the computer are carried out in the correct order
  • If a processor needs an instruction from memory, a read operation is carried out. Describe the steps of the memory read operation with reference to the processor, memory and buses. (4)
    1. Address to be read stored in MAR
    2. Contents of MAR transferred to Address bus
    3. Read control line activated
    4. Contents of memory at location from Address bus placed on Data bus
    5. Contents of Data bus transferred to MDR
  • Processor clock speed is one factor which affects system performance. Name one other factor and describe how it affects system performance. (2)
    • Data bus size – the larger the data bus the more bits that can be transferred in one clock cycle
    • RAM – more fast-access memory improves system performance as the processor does not need to use slow-access Virtual RAM
    • Graphics card with VRAM – takes away complex graphic calculations from processor, leaving it free to carry out other operations
  • Calculate the maximum amount of addressable memory that a processor with 24-bit address bus and 16-bit data bus could access. Express your answer in the appropriate units, (3)
    • Addressable memory (bits) =
    • data bus (bits) x 2 ^ address bus (bits)
    • 16 x 2^24 = 268435456 bits
    • /8 = 33554432 bytes
    • / 1024 = 32768 Kb
    • / 1024 = 32 Mb

Buses and Addressability

Today’s lesson was more a revision of topics that went before. However, we did learn a few important things.

  • To get the processors attention peripherals can make use of
    • Polling its a little like the teacher not letting anyone talk and asking everyone in turn if they need help
    • Interrupts this is like someone putting up their hand and the teacher stopping to deal with their problem before continuing.
  • The word size of the computer is the number of bits that can be manipulated as a single unit by the processor.
    • An ideal computer has a data bus that is the same size as its memory locations
  • The address bus determines the number of memory locations, however the data bus determines the size of each location. So to work out the amount of addressable memory, we must multiply the number of addresses by their size.
    • Total Addressable Memory = (2^address bus width) * Data bus width
    • IE a machine with a 16 bit Data Bus and 32 bit address bus would have
    • (2^32)*16 bits of accessible storage
    • or 8GB – Do the math yourself to prove it.