Tutorial 0 SimpleScalar Installation CPEG-323 Intro. To Computer Engineering Tom St. John September 19, 2008.

Slides:



Advertisements
Similar presentations
SimpleScalar Tutorial
Advertisements

Introduction to the Omega Server CSE Overview Intro to Omega Basic Unix Command Files Directories Printing C and C++ compilers GNU Debugger.
Program Development Tools The GNU (GNU’s Not Unix) Toolchain The GNU toolchain has played a vital role in the development of the Linux kernel, BSD, and.
Embedded Systems Programming Introduction to cross development techniques.
Computing Components 01/26/11. Announcements & Reminders Programs 1 due Friday, 9/2/11 What is my late policy? Proxy Codes for Labs  You should be able.
1 Real-Time System Design Developing a Cross Compiler and libraries for a target system.
CS 110 Intro to Computer Science I Sami Rollins Fall 2006.
1 Capstone projects supervised by Yinong Chen (1) Implementation of a Shell on Palm Hand Held Device (2) Building a Programmer’s Interface to the Palm.
Bending Binary Programs to your Will Rajeev Barua.
Implementing ISA Server Caching. Caching Overview ISA Server supports caching as a way to improve the speed of retrieving information from the Internet.
SECTION 1: INTRODUCTION TO SIMICS Scott Beamer CS152 - Spring 2009.
Makefiles, Unix, and Project 1 Q&A : Recitation 2 September 12, 2007.
Linux+ Guide to Linux Certification Chapter 12 Compression, System Backup, and Software Installation.
Midterm Thursday Topics: First Midterm Instructions Set Architecture Machine Language Programming Assembly Language Programming Traps, Subroutines, & Interrupts.
Linux+ Guide to Linux Certification, Third Edition Chapter 11 Compression, System Backup, and Software Installation.
Introduction To C++ Programming 1.0 Basic C++ Program Structure 2.0 Program Control 3.0 Array And Structures 4.0 Function 5.0 Pointer 6.0 Secure Programming.
The Unix Environment and Compiling. Getting Set Up Your programs will be compiled and tested on the Departmental server ‘linprog’ The linprog servers.
Introduction to Software Testing (Paul deGrandis) [Reading assignment: Chapter 15, pp and notes by Paul deGrandis]
IT 210 The Internet & World Wide Web introduction.
Lab 3 Department of Computer Science and Information Engineering National Taiwan University Lab3 - Cross Tools 2014/10/7/ 20 1.
Introduction to Java CSIS 3701: Advanced Object Oriented Programming.
Linux+ Guide to Linux Certification
© Janice Regan, CMPT 128, Jan CMPT 128 Introduction to Computing Science for Engineering Students Creating a program.
1 Intro to Linux - getting around HPC systems Himanshu Chhetri.
Topics Introduction Hardware and Software How Computers Store Data
Compiled from SimpleScalar Tutorial
Natawut NupairojAssembly Language1 Introduction to Assembly Programming.
Enabling the ARM Learning in INDIA ARM DEVELOPMENT TOOL SETUP.
Computer Architecture B-tree construction & Traversal YongSoo Bae Room 236, Engineering Building [Project 1]
1 Introduction to SimpleScalar (Based on SimpleScalar Tutorial) CPSC 614 Texas A&M University.
Apache Web Server v. 2.2 Reference Manual Chapter 1 Compiling and Installing.
20-753: Fundamentals of Web Programming 1 Lecture 1: Introduction Fundamentals of Web Programming Lecture 1: Introduction.
Introduction 1-1 Introduction to Virtual Machines From “Virtual Machines” Smith and Nair Chapter 1.
Logging into the linux machines This series of view charts show how to log into the linux machines from the Windows environment. Machine name IP address.
LINUX Tuesday, 5 July :00 pm. Remote Login l Use Secure Shell (ssh) l Machine name/IP address E.g. ssh hydra.sma.nus.edu.sg Or ssh
Day 7 Installing Software RPM tar, mtools make, ssh.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
Intro to PHP IST2101. Review: HTML & Tags 2IST210.
MIPS Project -- Simics Yang Diyi Outline Introduction to Simics Simics Installation – Linux – Windows Guide to Labs – General idea Score Policy.
What is a port The Ports Collection is essentially a set of Makefiles, patches, and description files placed in /usr/ports. The port includes instructions.
CS 127 Introduction to Computer Science. What is a computer?  “A machine that stores and manipulates information under the control of a changeable program”
Logging into the linux machines This series of view charts show how to log into the linux machines from the Windows environment. Machine name IP address.
A compiler is a computer program that translate written code (source code) into another computer language Associated with high level languages A well.
Chapter 1 Computers, Compilers, & Unix. Overview u Computer hardware u Unix u Computer Languages u Compilers.
Application Software System Software.
JavaScript 101 Introduction to Programming. Topics What is programming? The common elements found in most programming languages Introduction to JavaScript.
Tutorial on setting up Zebra: A Z39.50 Server ARD Prasad DRTC Indian Statistical Institute Bangalore.
Software. Introduction n A computer can’t do anything without a program of instructions. n A program is a set of instructions a computer carries out.
LECTURE 3 Translation. PROCESS MEMORY There are four general areas of memory in a process. The text area contains the instructions for the application.
Introduction to SimpleScalar Tool Set CPEG323 Tutorial Long Chen September, 2005.
Chapter 7: Using Network Clients The Complete Guide To Linux System Administration.
Review Why do we use protection levels? Why do we use constructors?
Lecture 3 Translation.
Topic 2: Hardware and Software
Outline Installing Gem5 SPEC2006 for Gem5 Configuring Gem5.
??? ple r B Amulya Sai EDM14b005 What is simple scalar?? Simple scalar is an open source computer architecture simulator developed by Todd.
Topics Introduction Hardware and Software How Computers Store Data
Chapter 1: A Tour of Computer Systems
Introduction to SimpleScalar
Introduction to SimpleScalar (Based on SimpleScalar Tutorial)
Logging into the linux machines
Java programming lecture one
Section 1: Introduction to Simics
COMPUTER SOFT WARE Software is a set of electronic instructions that tells the computer how to do certain tasks. A set of instructions is often called.
Topics Introduction Hardware and Software How Computers Store Data
Logging into the linux machines
Computer System Laboratory
Introduction to Virtual Machines
Introduction to Virtual Machines
Function of Operating Systems
Presentation transcript:

Tutorial 0 SimpleScalar Installation CPEG-323 Intro. To Computer Engineering Tom St. John September 19, 2008

Outline Introduction Installation How to Use Demo Labwork

Introduction What is SimpleScalar tool set? –A Complete Computer Architecture Test Bed –Includes: Compiler Assembler Linker Binary Utilities Architecture Simulators –Software capable of replicating the functions and capabilities of a computer system or device –Helps predict the output of a machine with a given input

The Simulators sim-fastSimulator designed for optimal speed and does not check for cache memory. sim-safeSimulator similar to sim-fast, but checks for memory alignment and access. sim-profileObtains information on text symbol, memory accesses, etc. sim-cacheSimulator of multi-level cache. sim-cheetahCache simulator with multiple configurations and runs a single pass of the program. sim-bredBranch predictor simulator. sim-outorderMost complicated and detailed simulator that performs out-of-order execution of instructions.

Why SimpleScalar? Test programs and applications on various ISAs. –PISA, ARM, Alpha, and x86 Simulators can emulate computer devices, such as, cache and branch predictor. It’s software! –Cuts production cost and time –Don’t have to rely on one machine –Most importantly…its PORTABLE!

Where to get it? Web Site: – ched.tar.gzhttp:// ched.tar.gz Download using either wget or a web browser

Outline Introduction Installation How to Use Demo Lab Work

Installation – Step 1 Use SSH Secure Shell Client to log in to account at “linuxlab.acad.ece.udel.edu” –You need an account to do the labs! Copy the tarball file to your home directory Untar the files –tar xzvf simplescalar_patched.tar.gz If the command fails, try this sequence –gzip –d simplescalar_patched.tar.gz –tar xvf simplescalar_patched.tar

Directory Checklist simplesim-3.0/: SimpleScalar simulators’ source code. binutils-2.5.2/:The GNU binary utilities code. sslittle-na-sstrix/:Root directory of little-endian SimpleScalar binary utilities and compiler tools and contains header files and a pre-compiled copy of libc. ssbig-na-sstrix/: Same as above, except it holds big-endian binary utilities. gcc-2.6.3/: The GNU C compiler code.

Step 2 – Build GNU Utilities cd binutil –(cd $PATH_TO_FOLDER/CPEG323/binutils-2.5.2)./configure --host=i386-unknown-gnu/linux -- target=sslittle-na-sstrix --with-gnu-as --with-gnu-ld --prefix=$PATH_TO_FOLDER/CPEG323 make make install

Step 3 – Build Simulator cd../simplesim-3.0 –(cd $PATH_TO_FOLDER/CPEG323/simplesim-3.0) make

Step 4 – Build Compiler cd../gcc –(cd $PATH_TO_FOLDER/CPEG323/gcc-2.6.3)./configure --host=i386-unknown-gnu/linux --target=sslittle-na-sstrix --with-gnu-as --with-gnu- ld --prefix=$PATH_TO_FOLDER/CPEG323 make LANGUAGES=c../simplesim-3.0/sim-safe./enquire -f >! float.h- cross make install

Outline Introduction Installation How to Use Demo Lab Work

How to Use Write the program. –C language or assembly Compile source code. –sslittle-na-sstrix-gcc –o xxx xxx.cC code to binary code –sslittle-na-sstrix-gcc –o xxx.s –S xxx.cC code to Assemble code –sslittle-na-sstrix-gcc –o xxx xxx.sAssemble code to binary code Use simulators to run binary code. –sim-safe fooNecessary for lab. –sim-fast fooGain optimal speed. -etc.

Outline Introduction Installation How to Use Demo Lab Work

Demo

Outline Introduction Installation How to Use Demo Lab Work

Your linuxlab accounts have limited disk quota! Don’t use tar command too frequently or you’ll use up all your disk quota If quota exceeded, then cannot install SimpleScalar –Send a help request the server’s admin. A Warning!

Construct a simple C program –E.g. Adding 2 integers together or a series of arithmetic operations. Compile and run code on simulator. Code is running correctly? Then move on to the lab questions Installation Complete? Test it!

Any Questions?