Effects of Pipelining on CPU Speed

CSEF · 2016 Electronics & Electromagnetics Second Award

Overview

Objectives/Goals This experiment examined the effects of pipelining on the speed of CPUs. The goal was to test which CPU type (pipelined and not pipelined) was faster at executing programs. Methods/Materials Mac book Air with Minecraft, stopwatch. Two CPUs were built in Minecraft, one was pipelined with 2 stages, the other was not pipelined and had only 1 stage. They were tested on 3 different programs: Fibonacci sequence function program (a program that calculates the Fibonacci number for a given input), multiplication program (a program that multiplies two numbers), and odd number tester program (a program that tests if a given input number is odd or even). Results The pipelined CPU was faster on both the multiplication and the Fibonacci programs, but the Odd Tester program was different. On the unpipelined CPU, it was faster on large numbers. Conclusions/Discussion The results suggest that in most cases, pipelined CPUs are faster, but in some cases, where there are data dependencies with branching, the unpipelined CPUs are faster. This shows that pipelined CPUs should be used in computers, for they would make them faster overall.

Summary statement

I ran different programs on 2 types of CPUs (pipelined and not pipelined), and found that a pipelined CPU performs better unless it execute a large number of branch instructions.

Help received

I made both CPUs and all the programs myself. I got help with understanding pipelining from the users of OpenRedstoneEngineers server.

Awards (1)

Competition history

  • CSEF 2016 Electronics & Electromagnetics · Entry J0927

Resources

Related projects

Closest projects by meaning, across every fair and year in the corpus.

Browse more like this

Source: California Science & Engineering Fair public projects

Save projects to your library

Sign in with Google to keep track of projects you find interesting, organized into folders. An account also raises your daily allowance for “Has this been done?”, and lets you create a key for the MCP server with a much higher limit than anonymous use. Browsing stays public.

Continue with Google