Documents Found!
As seen in
Less Work, Better Grades
Join
Course Hero
Access
best resources
Ace
your classes
Ace your courses with Course Hero!

Submit your homework question or assignment here:
352 Tutors are online
 
We are so confident that you will love our service, we will answer your first homework question for FREE!
*  Attach Assignment (optional):
 
Study Smarter, Score Higher
 
Document Content (unformatted)
Course Hero has millions of student submitted documents similar to the one below including study guides, homework solutions, papers, exam answer keys and textbook solutions.
MPI-2 Motivation Parallel I/O High level parallel I/O interface Supports file partitioning among processes Transfer of data structures between process memories and files Asynchronous/non-blocking I/O Strided / Non-contiguous access Collective I/O Far too many issues to put into one lecture plenty of web resources provide more details if you need them Draws heavily from Using MPI-2 DiSCoV DiSCoV Based on notes by Sathish Vadhiyar, Rob Thacker, and David Cronk 26 April 2007 26 April 2007 INTRODUCTION What is parallel I/O? Multiple processes accessing a single file Often, both data and file access is non-contiguous Ghost cells cause non-contiguous data access Block or cyclic distributions cause non-contiguous file access Want to access data and files with as few I/O calls as possible INTRODUCTION (cont) Why use parallel I/O? Many users do not have time to learn the complexities of I/O optimization Use of parallel I/O can simplify coding Single read/write operation vs. multiple read/write operations Parallel I/O potentially offers significant performance improvement over traditional approaches DiSCoV 26 April 2007 DiSCoV 26 April 2007 1 INTRODUCTION (cont) Traditional approaches Each process writes to a separate file Often requires an additional post-processing step Without post-processing, restarts must use same number of processor Result sent to a master processor, which collects results and writes out to disk Each processor calculates position in file and writes individually INTRODUCTION (cont) What is MPI-I/O? MPI-I/O is a set of extensions to the original MPI standard This is an interface specification: It does NOT give implementation specifics It provides routines for file manipulation and data access Calls to MPI-I/O routines are portable across a large number of architectures DiSCoV 26 April 2007 DiSCoV 26 April 2007 MPI-I/O Makes extensive use of derived datatypes Allows non-contiguous memory and or disk data to be read/written with a single I/O call Can simplify programming and maintenance May allow for overlap of computation and I/O Collective I/O allows for performance optimization through marshaling Significant performance improvement is possible Memory Non-parallel I/O Processes File Simplest way to do I/O number of factors may contribute to this kind of model: May have to implement this way because only one process is capable of I/O May have to use serial I/O library I/O may be enhanced for large writes Easiest file handling only one file to keep track of Arguments against: Strongly limiting in terms of throughput if the underlying file system does permit parallel I/O DiSCoV 26 April 2007 DiSCoV 26 April 2007 2 Additional argument for parallel I/O standard Standard UNIX I/O is not portable Endianess becomes serious problem across different machines Writing wrappers to perform byte conversion is tedious Memory Simple parallel I/O Processes Files Multiple independent files are written Same as parallel I/O allowed under OpenMP May still be able to use sequential I/O libraries Significant increases in throughput are possible Drawbacks are potentially serious Now have multiple files to keep track of (concatenation may not be an option) May be non-portable if application reading these files must have the same number of processes DiSCoV 26 April 2007 DiSCoV 26 April 2007 Simple parallel I/O (no MPI calls) I/O operations are completely independent across the processes Append a rank to each file name to specify the different files Need to be very careful about performance individual files may be too small for good throughput #include "mpi.h" #include <stdio.h> #define BUFSIZE 100 Int main(int argc, char *argv[]) { int i,myrank,buf[BUFSIZE]; char filename[128]; FILE *myfile; MPI_Init(&argc,&argv); MPI_Comm_rank(MPI_COMM_WORLD, &myrank); for (i=0; i< BUFSIZE; i++) buf[i] = myrank * BUFSIZE + I; sprintf(filename,"testfile.%d",myrank); myfile= fopen(filename, "w"); fwrite(buf,sizeof(int), BUFSIZE, myfile); fclose(myfile); MPI_Finalize(); return 0; } Simple parallel I/O (using MPI calls) Rework previous example to use MPI calls Note the file pointer has been replaced by a variable of type MPI_File Under MPI I/O open, write (read) and close statements are provided Note MPI_COMM_SELF denotes a communicator over local process #include "mpi.h" #include <stdio.h> #define BUFSIZE 100 Int main(int argc, char *argv[]) { int i,myrank,buf[BUFSIZE]; char filename[128]; MPI_File myfile; MPI_Init(&argc,&argv); MPI_Comm_rank(MPI_COMM_WORLD, &myrank); for (i=0; i< BUFSIZE; i++) buf[i] = myrank * BUFSIZE + i; sprintf(filename,"testfile.%d",myrank); MPI_File_open(MPI_COMM_SELF, filename, MPI_MODE_WRONLY | MPI_MODE_CREATE, MPI_INFO_NULL, &myfile); MPI_File_write(myfile, buf, BUFSIZE, MPI_INT, MPI_STATUS_IGNORE); MPI_File_close(&myfile); MPI_Finalize(); return 0; } DiSCoV 26 April 2007 DiSCoV 26 April 2007 3 MPI_File_open arguments MPI_File_open(comm,filename,accessmode,info,filehandle,ierr) Comm can choose immediately whether file access is collective or local MPI_COMM_WORLD or MPI_COMM_SELF Access mode is specified by MPI_MODE_CREATE and MPI_MODE_WRONLY are or'd together Same as Unix open The file handle is passed back from this call to be used later in MPI_File_write MPI_File_write MPI_File_write(filehandler,buff,count,datatype,status,ierr) Very similar to message passing interface Imagine file handler as providing destination "Address,count,datatype" interface Specification of non-contiguous writes would be done via a userdefined datatype MPI_STATUS_IGNORE can be passed in the status field Informs system not to fill field since user will ignore it May slightly improve I/O performance when not needed DiSCoV 26 April 2007 DiSCoV 26 April 2007 ROMIO ("romeo") Publically available implementation of the MPI-I/O instruction set http://www-unix.mcs.anl.gov/romio Memory True parallel MPI I/O Runs on multiple platforms Optimized for non-contiguous access patterns Common for parallel applications Processes File Optimized for collective operations Processes must all now agree on opening a single file Each process must have its own pointer within the file File clearly must reside on a single file system Can read the file with a different number of processes as compared to what it was written with DiSCoV 26 April 2007 DiSCoV 26 April 2007 4 Parallel I/O to a single file using MPI calls Rework previous example to write to a single file Write is now collective MPI_COMM_SELF has been replaced by MPI_COMM_WORLD #include "mpi.h" #include <stdio.h> #define BUFSIZE 100 Int main(int argc, char *argv[]) { int i,myrank,buf[BUFSIZE]; MPI_File thefile; MPI_Init(&argc,&argv); MPI_Comm_rank(MPI_COMM_WORLD, &myrank); for (i=0; i< BUFSIZE; i++) buf[i] = myrank * BUFSIZE + i; MPI_File_open(MPI_COMM_WORLD, "testfile", MPI_MODE_WRONLY | MPI_MODE_CREATE, MPI_INFO_NULL, &thefile); MPI_File_set_view(thefile, myrank*BUFSIZE*sizeof(int), "native", MPI_INT,MPI_INT, MPI_INFO_NULL); MPI_File_write(thefile,buf, BUFSIZE, MPI_INT, MPI_STATUS_IGNORE); MPI_File_close(&thefile); MPI_Finalize(); return 0; } File view File view defines which portion of a file is "visible" to a given process On first opening a file the entire file is visible Data is described at the byte level initially All files agree on a collective name for the file "testfile" Access to given parts of the file is specifically controlled MPI_File_set_view Shift displacements according to local rank MPI_File_set_view provides information to enable reading of the data (datatypes) Specify which parts of the file should be skipped DiSCoV 26 April 2007 DiSCoV 26 April 2007 MPI_File_set_view MPI_File_set_view(filehandler,displ,etype,filedatatype,datarep,in fo,ierr) Displ controls the BYTE offset from the beginning of the file The displacement is of a type "MPI_Offset" larger than normal MPI_INT to allow for 64 bit addressing (byte offsets can easily exceed 32 bit limit) etype is the datatype of the buffer filedatatype is the corresponding datatype in the file, which must be either etype, or derived from it Datarep native: data is stored in the file as in memory internal: implementation specific format that may provide a level or portability external32: 32bit big endian IEEE format (defined for all MPI implementations) Only use if portability is required (conversion may be necessary) Definitions Displacement file position from the beginning of a file etype unit of data access filetype template for accessing the file view current set of data accessible by a process. Repetitions of filetype pattern define a view offset position relative to the current view DiSCoV 26 April 2007 DiSCoV 26 April 2007 5 etype and filetype in action Suppose we have a buffer with an etype of MPI_INT Filetype is defined to be 2 MPI_INTs followed by an offset of 4 MPI_INTS (extent=6) MPI_File_set_view(fh,5*sizeof(int),etype,filetype,"native",MPI_INFO_NULL) MPI_File_write(fh,buf,1000,MPI_INT,MPI_STATUS_IGNORE) Examples etype = MPI_INT filetype = 2 MPI_INTs, followed by 4 offset 1 2 3 4 5 6 Displacement of 5 MPI_INTS filetype filetype 26 April 2007 filetype DiSCoV DiSCoV 26 April 2007 Reading a single file with an unknown number of processors New function: MPI_File_get_size Returns size of open file, need to use 64 bit int (MPI_Offset) #include "mpi.h" #include <stdio.h> int main(int argc, char *argv[]) { int myrank,numprocs,bufsize,*buf,count; MPI_File thefile; MPI_Status status; MPI_Offset filesize; MPI_Init(&argc,&argv); MPI_Comm_rank(MPI_COMM_WORLD, &myrank); MPI_Comm_size(MPI_COMM_WORLD, &numprocs); MPI_File_open(MPI_COMM_WORLD, "testfile", MPI_MODE_RDONLY,MPI_INFO_NULL, &thefile); MPI_File_get_size(thefile,&filezize); filesize=filesize/sizeof(int); bufsize=filesize/(numprocs+1); buf=(int *) malloc(bufsize*sizeof(int)); MPI_File_set_view(thefile, myrank*bufsize*sizeof(int), MPI_INT,MPI_INT,"native", MPI_INFO_NULL); MPI_File_read(thefile,buf, bufsize, MPI_INT, &status); MPI_Get_count(&status, MPI_INT, &count); printf("process %d read %d ints\n",myrank,count); MPI_File_close(&thefile); MPI_Finalize(); return 0; Using explicit offsets MPI_File_read/write are individual-file-pointer functions Both use current location of pointer to determine where to read/write Must perform a seek to arrive at the correct region of data Check how much data has been read by using status handler Pass to MPI_Get_count Determines number of datatypes that were read Explicit offset functions don't use an individual file pointer File offset is passed directly as an argument to the function Seek is not required MPI_File_read/write_at Must use this version in multithreaded environment If number of read items is less than expected then (hopefully) EOF is reached DiSCoV } 26 April 2007 DiSCoV 26 April 2007 6 Revised code for explicit offsets No need to apply seeks Specific movement of file pointer is not applied, instead offset is passed as argument Remember offsets must be of kind MPI_OFFSET_KIND Same issue here with precalculating offset and resolving into a variable with the appropriate typing PROGRAM main include `mpif.h integer FILESIZE,MAX_BUFSIZE,INTSIZE parameter (FILESIZE=1048576, MAX_BUFSIZE=1048576) parameter (INTSIZE=4) integer buf(MAX_BUFSIZE),rank,ierr,fh,nprocs,nints integer status(MPI_STATUS_SIZE), count integer(kind=MPI_OFFSET_KIND) offset call call call call MPI_Init(ierr) MPI_Comm_rank(MPI_COMM_WORLD,rank,ierr) MPI_Comm_size(MPI_COMM_WORLD,nprocs,ierr) MPI_File_open(MPI_COMM_WORLD, `testfile',& MPI_MODE_RDONLY,& MPI_INFO_NULL,fh,ierr) nints=FILESIZE/(nprocs*INTSIZE) offset=rank*nints*INTSIZE call MPI_File_read_at(fh,offset, buf, nints, & MPI_INTEGER,status,ierr) call MPI_Get_count(status,MPI_INTEGER,count,ierr) print*, `process ',rank,'read `,count','ints' call MPI_File_close(fh,ierr) call MPI_Finalize(ierr); Dealing with multidimensional arrays Storage formats differ for C versus fortran row major versus column major MPI_Type_create_darray, and also MPI_Type_create_subarray are used to specify derived datatypes These datatypes can then be used to resolve local regions within a linearized global array Specifically they deal with the noncontiguous nature of the domain decomposition See Using MPI-2 book for more details END PROGRAM main DiSCoV 26 April 2007 DiSCoV 26 April 2007 Summary MPI I/O provides a straightforward interface for performing parallel I/O Single file output is supported via multiple file pointers into the same file Multiple output files may also be written File Info Object Can provide hints to the implementation to improve I/O performance MPI_FILE_SET_INFO(fh, info) MPI_FILE_GET_INFO(fh, info_used) Default hints for file access patterns and data layout Can use explicit pointer based schemes, or alternatively use file views to specify local access DiSCoV 26 April 2007 DiSCoV 26 April 2007 7 Default Hints (Info values) { access_style} (comma separated list of strings) - read_once, write_once, read_mostly, write_mostly, sequential, reverse_sequential, and random { collective_buffering} (boolean) { cb_buffer_size} (integer) { cb_nodes} (integer) { filename} (string) { file_perm} (string) { io_node_list} (comma separated list of strings) { nb_proc} (integer) { num_io_nodes} (integer) { striping_factor} (integer) { striping_unit} (integer) Positioning Synchronism Explicit offsets Blocking Non-blocking API Coordination Non-Collective MPI_FILE_READ_AT Coordination Collective MPI_FILE_READ_AT_ALL MPI_FILE_IREAD_AT MPI_FILE_READ_AT_ALL_BEGIN MPI_FILE_READ_AT_ALL_END Individual file pointers Blocking Non-blocking MPI_FILE_READ MPI_FILE_READ_ALL MPI_FILE_IREAD MPI_FILE_READ_ALL_BEGIN MPI_FILE_READ_ALL_END Shared file pointers Blocking Non-blocking MPI_FILE_READ_SHARED MPI_FILE_READ_ORDERED MPI_FILE_IREAD_SHARED MPI_FILE_READ_ORDERED_BEGIN MPI_FILE_READ_ORDERED_END DiSCoV 26 April 2007 DiSCoV 26 April 2007 8
Find millions of documents here - Study Guides, Homework Solutions, Papers, Exam Answer Keys and more. Course Hero has millions of course related materials that will enable you to learn better, faster and get an A in all your courses.
Below is a small sample set of documents:

Kent State >> CG >> 02 (Fall, 2009)
Rendering A simple X program to illustrate rendering The programs in this directory provide a simple x based application for us to develop some graphics routines. Please notice the following: All points are integers. The line drawing algorithm i...
Kent State >> CC >> 07 (Fall, 2009)
Cluster Computing Spring 2004 Paul A. Farrell 4/25/2006 Operating System - Linux What is Linux? Why Linux? Most popular Open Source operating system Marketed commercially now Easily modified and tweaked Pool of experienced users Easily adm...
Kent State >> CG >> 02 (Fall, 2009)
CLIPPING ON A RASTER DISPLAY Clipping: Remove points outside a region of interest. Discard (parts of) primitives outside of window Point clipping: Remove points outside window. A point is either entirely inside the region or not. Line clipping...
Kent State >> CG >> 02 (Fall, 2009)
Development of Computer Graphics 1951 Whirlwind, Jay Forrester (MIT) CRT displays mid 1950s SAGE air defense system command & control CRT, light pens late 1950s Computer Art, James Whitney Sr. Visual Feedback loops 1962 Sketchpad, Ivan ...
Kent State >> CS >> 49995 (Spring, 2008)
Chapter 1: Introduction Requirements Engineering Objectives In this chapter, you will learn about: The importance of requirements The role of RE in Software Development Lifecycle Requirements Engineering 2 Problem Statement What is the problem th...
Kent State >> CG >> 06 (Fall, 2009)
Curves and Surfaces Introduce types of curves and surfaces Explicit Implicit Parametric Strengths and weaknesses Escaping Flatland Until now we have worked with flat entities such as lines and flat polygons Fit well with graphics hardware Mathematic...
Kent State >> CG >> 06 (Fall, 2009)
Hidden Surface Removal Object-space approach: use pairwise testing between polygons (objects) Painters Algorithm Render polygons in back to front order so that polygons behind others are simply painted over partially obscuring can draw independent...
Kent State >> VIS >> 08 (Fall, 2009)
Volume Rendering Shading and Transfer Function Shading Model with Phong Simple model used in volume rendering Three components Diffuse Specular Ambient Uses four vectors To source To viewer Normal Perfect reflector Material Properties 9 ...
Kent State >> ACG >> 08 (Fall, 2009)
Monte-Carlo Ray Tracing Monte-Carlo Computation of Take a random point (x,y) in a square Test if (x2+y2 < 1) The probability is /4 Why? y x Monte-Carlo Computation of Number n = No. of inside points / total number of sample points n*4 Th...
Kent State >> CG >> 06 (Fall, 2009)
Computer Viewing Objectives Introduce the mathematics of projection Introduce OpenGL viewing functions Computer Viewing There are three aspects of the viewing process, all of which are implemented in the pipeline, Positioning the camera Setting the ...
Kent State >> VIS >> 08 (Fall, 2009)
Visual Perception Basics Please refer to Colin Wares Book Some materials are from Profs. Colin Ware, University of New Hampshire Klaus Mueller, SUNY Stony Brook Jrgen Dllner, University of Potsdam Barna Resk, Hungary Academy of Sciences Christopher G...
Kent State >> CS >> 63005 (Fall, 2008)
Indexing and Hashing s Basic Concepts s Dense and Sparse Indices s B+Trees, B-trees s Dynamic Hashing s Comparison of Ordered Indexing and Hashing s Index Definition in SQL s Multiple-Key Access 1 Basic Concepts s Indexing mechanisms used to speed ...
Kent State >> CS >> 43005 (Fall, 2008)
Entity-Relationship Model Lecture 5 Database Modeling and Implementation Process Ideas ER Design Relational Schema Relational DBMS Implementation ER Model Components Entity Sets Attributes Relationships ER Model The enterprise data can be de...
Kent State >> CS >> 43005 (Fall, 2008)
SQL Lecture 3 SQL s Data Definition s Basic Query Structure s Set Operations s Aggregate Functions s Null Values s Nested Subqueries s Complex Queries s Views s Modification of the Database s Joined Relations* 2 History s IBM Sequel language devel...
Kent State >> CS >> 43005 (Fall, 2008)
Introduction to Database Systems Yuri Breitbart TTH 9:15 10:30pm Fall 2007 rm MS115 Course Goals This course is an introduction to the design, use, and internal workings of database management system We consider here systems that are based on relat...
Kent State >> CS >> 43005 (Fall, 2008)
Relational Algebra Lecture 2 Relational Model Basic Notions Fundamental Relational Algebra Operations Additional Relational Algebra Operations Extended Relational Algebra Operations Null Values Modification of the Database Views Bags and Bag...
Kent State >> CS >> 43005 (Fall, 2008)
Relational Algebra Lecture 2 Relational Model Basic Notions Fundamental Relational Algebra Operations Additional Relational Algebra Operations Extended Relational Algebra Operations Null Values Modification of the Database Views Bags and Bag...
Kent State >> CS >> 63005 (Fall, 2008)
Concurrency Control Theory - Outline Application Examples Transaction Concept virtues and drawbacks Schedules, Serial schedules Equivalent Schedules, Correctness Serializability Final State Serializability View Serializability Conflict Seriaz...
Kent State >> CS >> 43005 (Fall, 2008)
Entity-Relationship Model Lecture 2 Database Modeling and Implementation Process Ideas ER Design Relational Schema Relational DBMS Implementation ER Model Components Entity Sets Attributes Relationships ER Model The enterprise data can be de...
Kent State >> CS >> 43005 (Fall, 2008)
Introduction to Database Systems Yuri Breitbart MW 4:45 6:00pm Fall 2004 Course Goals This course is an introduction to the design, use and internal workings of database systems. We consider here systems that are based on relational model that is,...
Kent State >> CS >> 43005 (Fall, 2008)
Integrity and Security s Domain Constraints s Referential Integrity s Assertions s Triggers s Security s Authorization s Authorization in SQL 1 Domain Constraints s Integrity constraints guard against accidental damage to the database, by ensuring...
Kent State >> CS >> 43005 (Fall, 2008)
Schema Used in Examples 1 Basic Structure s SQL is based on set and relational operations with certain modifications and enhancements s A typical SQL query has the form: select A1, A2, ., An from r1, r2, ., rm where P 5 Ais represent attributes 5...
Kent State >> CS >> 43005 (Fall, 2008)
Relational Data Model Lecture 3 Relational Model Domain a set of atomic values. Example: set of integers Data Type Description of a form that domain values can be represented. Each domain has a null value Cartesian Product D1 x D2 a set of pai...
Kent State >> CS >> 43005 (Fall, 2008)
Relational Algebra Lecture 4 Relational Algebra Relational Algebra Extended Relational-Algebra-Operations Modification of the Database Views Operations on Bags Relational Schema and Relations R is a set of attributes: R(A,B,C, ., D) is a r...
Kent State >> CS >> 43005 (Fall, 2008)
Object Oriented Model s Notion of the object - Encapsulation s Class, Inheritance s Class Diagram (tree and graph), Multiple Inheritance s Object Containment s Object-Oriented Languages s Persistent C+ s Object Query Language s Conclusions 1 Need f...
Kent State >> CS >> 43005 (Fall, 2008)
Database Overview File Management vs Database Management Advantages of Database systems: storage persistence, programming interface, transaction management Three level Data Model DBMS Architecture Database System Components Users classification...
Kent State >> CS >> 43005 (Fall, 2008)
Relational Database Design Theory Lecture 6 The Banking Schema branch = (branch_name, branch_city, assets) customer = (customer_id, customer_name, customer_street, customer_city) loan = (loan_number, amount) account = (account_number...
Kent State >> CS >> 63005 (Fall, 2008)
List of papers to be presented at Advanced Database Class-Spring 2009 1. Alpa Jain, AnHai Doan, Luis Gravano: Optimizing SQL Queries over Text Databases. ICDE 2008: 636-645 2. Fei Chen, AnHai Doan, Jun Yang, Raghu Ramakrishnan: Efficient Information ...
Kent State >> CS >> 43005 (Fall, 2008)
Introduction to Database Systems CS43005 Spring 2008 Project Book Store In this project you are to design a database application to run online Book Store. Your store operates as follows: Any customer before s/he can use the book store, should regi...
Kent State >> CS >> 10051 (Fall, 2008)
CHAPTER 6 INTRODUCTION TO SYSTEM SOFTWARE AND VIRTUAL MACHINES VIRTUAL MACHINES The machine we \"built\" is not the machine you \"see\" when you sit and start typing on the keyboard. The hardware at the lowest level consists of: binary representations: ...
Kent State >> CS >> 10051 (Fall, 2008)
Chapter 8 Introduction to High-Level Language Programming Objectives In this chapter, you will learn about Where do we stand? High-level languages Introduction to C+ Virtual data storage Statement types Putting the pieces together Objectives...
Kent State >> CS >> 10051 (Fall, 2008)
CHAPTER 4 CS 10051 BUILDING BLOCKS: BINARY NUMBERS, BOOLEAN LOGIC, GATES WHERE WE ARE NOW Chapters 1-3 dealt with the bottom part of the pyramid shown on the cover- namely, the algorithmic foundations of computer science. We have investigated the qu...
Kent State >> CS >> 10051 (Fall, 2008)
CHAPTER 5 COMPUTER SYSTEMS ORGANIZATION REMEMBER . Computer science is the study of algorithms including * Their formal and mathematical properties-Chpts 1-3 * Their hardware realizations - Chpts 4-5 Their linguistic realizations. Their applications...
Kent State >> CS >> 10051 (Fall, 2008)
CHAPTER 2 CS 10051 HOW DO WE REPRESENT ALGORITHMS? Use natural language? Advantages? Don\'t have to learn something else. Disadvantages? Verbose. Unstructured. Multiple meanings - too rich in interpretation. Difficult to isolate parts of t...
Kent State >> CS >> 10051 (Fall, 2008)
Job Opportunities in Computer Science Hot off the presses What field has. .the best-rated job, and 5 of the top 10 highest paid, highest growth jobs? .shown strong job growth in the face of outsourcing? .a looming severe shortage in college gradu...
Kent State >> CS >> 10051 (Fall, 2008)
Statement on Academic Dishonesty Excerpted from the University\'s Administrative policy and procedures regarding student cheating and plagiarism. Policy #3342-3-07 (A) Policy statement. It is the policy of the university that: (1) Students enrolled i...
Kent State >> CS >> 10001 (Fall, 2008)
TechnologyInAction MidtermExamStudyGuide TheExam SampleExamQuestions LabExercises3and4 TechnologyinFocuses3and4 Soundbytes6to10 Chapters6to10 Review TheMidtermExam When Thursday,April3,2008 5:306:45pm MSB115 15%ofyourf...
Kent State >> CS >> 0 (Fall, 2009)
CS 10051 Sample Questions for Midterm II True/False Indicate whether the sentence or statement is true or false. _ _ _ _ _ _ _ _ _ 1. Information is stored in the memory of a computer using the decimal numbering system. 2. Any whole number that can b...
Kent State >> CS >> 35101 (Fall, 2008)
B-38 Appendix B The Basics of Logic Design Check Yourself Suppose you wanted to add the operation NOT (a AND b), called NAND. How could the ALU change to support it? 1. No change. You can calculate NAND quickly using the current ALU since ( a b ...
Kent State >> CS >> 43101 (Fall, 2009)
Partial Solution Set for Programming Language Concepts Third Edition Carlo Ghezzi and Mehdi Jazayeri Prepared by Glenn Blauvelt Department of Computer Science University of Colorado at Boulder 2002 by Glenn Blauvelt Chapter 1 Exercises Chapter ov...
Kent State >> CS >> 43101 (Fall, 2009)
Statement-Level Control Structures Introduction Selection Statements Iterative Statements Unconditional Branching Guarded Commands Conclusions 8-1 Introduction Levels of Control Flow: 1. Within expressions 2. Among program units 3. Among pro...
Kent State >> CS >> 35101 (Fall, 2008)
CS35101 Computer Architecture Week 9: Understanding Performance Paul Durand ( www.cs.kent.edu/~durand ) [Adapted from M Irwin (www.cse.psu.edu/~mji) ] [Adapted from COD, Patterson & Hennessy, 2005, UCB] Indeed, the cost-performance ratio of the pr...
Kent State >> CS >> 35101 (Fall, 2008)
CS35101- Computer Architecture Week 10: Single Cycle Implementation Paul Durand ( www.cs.kent.edu/~durand ) [Adapted from M Irwin (www.cse.psu.edu/~mji) ] [Adapted from COD, Patterson & Hennessy, 2005, UCB] Head\'s Up This week\'s material q q Bu...
Kent State >> CS >> 35101 (Fall, 2008)
CS 35101 Computer Architecture Spring 2006 Lecture 20, 21 - Improving Cache Performance Paul Durand ( www.cs.kent.edu/~durand ) [Adapted from M Irwin (www.cse.psu.edu/~mji) ] [Adapted from COD, Patterson & Hennessy, 2005, UCB] Review: The Memory Hi...
Kent State >> CS >> 35101 (Fall, 2008)
CS35101- Computer Architecture Week 12: Multi Cycle Implementation Paul Durand ( www.cs.kent.edu/~durand ) [Adapted from M Irwin (www.cse.psu.edu/~mji) ] [Adapted from COD, Patterson & Hennessy, 2005, UCB] Head\'s Up This week\'s material q q Mic...
Kent State >> CS >> 35101 (Fall, 2008)
CS35101 Computer Architecture Spring 2006 Week 5 Paul Durand (www.cs.kent.edu/~durand) Course url: www.cs.kent.edu/~durand/cs35101.htm Head\'s Up This week\'s material q MIPS procedures (cont\'d), immediate instructions, and addressing modes - Readi...
Kent State >> CS >> 35101 (Fall, 2008)
CS35101- Computer Architecture Overcoming Data Hazards Paul Durand ( www.cs.kent.edu/~durand ) [Adapted from M Irwin (www.cse.psu.edu/~mji) ] [Adapted from COD, Patterson & Hennessy, 2005, UCB] Review: MIPS Pipeline Data and Control Paths PCSrc ID...
Kent State >> CS >> 35101 (Fall, 2008)
CS35101 Computer Architecture Spring 2006 Week 2 Head\'s Up This week\'s material q Introduction to MIPS assembler - Reading assignment - PH 2.1 through 2.7, omit 2.6 Reminders Next week\'s material q MIPS control flow operations - Reading ass...
Kent State >> CS >> 35101 (Fall, 2008)
CS 35101 Computer Architecture Spring 2006 Week 6/7 Paul Durand (www.cs.kent.edu/~durand) Course url: www.cs.kent.edu/~durand/cs35101.htm Head\'s Up Week 6 & 7 material q q q q Digital Logic Design Processor organization / description MIPS arithme...
Kent State >> CS >> 35101 (Fall, 2008)
CS 35101 Computer Architecture Spring 2006 Lecture 24. I/O Systems Paul Durand ( www.cs.kent.edu/~durand ) [Adapted from M Irwin (www.cse.psu.edu/~mji) ] [Adapted from COD, Patterson & Hennessy, 2005, UCB] Review: Major Components of a Computer Pr...
Kent State >> CS >> 35101 (Fall, 2008)
CS35101- Computer Architecture Week 11: Multi Cycle Implementation Paul Durand ( www.cs.kent.edu/~durand ) [Adapted from M Irwin (www.cse.psu.edu/~mji) ] [Adapted from COD, Patterson & Hennessy, 2005, UCB] Heads Up This weeks material q q Multi...
Kent State >> CS >> 35101 (Fall, 2008)
CS 35101 Computer Architecture Spring 2006 Lecture 19: Cache Introduction Paul Durand ( www.cs.kent.edu/~durand ) [Adapted from M Irwin (www.cse.psu.edu/~mji) ] [Adapted from COD, Patterson & Hennessy, 2005, UCB] Review: The Memory Hierarchy Take...
Kent State >> CS >> 35101 (Fall, 2008)
CS35101 Computer Architecture Spring 2006 Lecture 18: Memory Hierarchy Paul Durand ( www.cs.kent.edu/~durand ) [Adapted from M Irwin (www.cse.psu.edu/~mji) ] [Adapted from COD, Patterson & Hennessy, 2005, UCB] ] Review: Major Components of a Comput...
Kent State >> CS >> 35101 (Fall, 2008)
CS 35101 Computer Architecture Spring 2006 Lecture 22 - Virtual Memory Hardware Support : TLB Paul Durand ( www.cs.kent.edu/~durand ) [Adapted from M Irwin (www.cse.psu.edu/~mji) ] [Adapted from COD, Patterson & Hennessy, 2005, UCB] Review: The Mem...
Kent State >> CS >> 35101 (Fall, 2008)
CS 35101 Computer Architecture Spring 2006 Week 4 Paul Durand (www.cs.kent.edu/~durand) Course url: www.cs.kent.edu/~durand/cs35101.htm Review: Signed Binary Representation -23 = -(23 - 1) = 2\'sc binary 1000 1001 1010 1011 1100 1101 1110 1111 0000 0...
Kent State >> CS >> 35101 (Fall, 2008)
CS 35101 Computer Architecture Spring 2006 Lecture 23. Disks Hennessy, 2005, UCB] Review: Major Components of a Computer P...
Kent State >> CS >> 35101 (Fall, 2008)
CS35101 Computer Architecture Spring 2006 Week 1 Slides adapted from: Mary Jane Irwin (www.cse.psu.edu/~mji) Course url: www.cs.psu.edu/~cg331 [Adapted from Dave Patterson\'s UCB CS152 slides] Course Administration Instructor: Paul J Durand duran...
Kent State >> CS >> 0 (Fall, 2009)
Chapter 7: Computer Networks, the Internet, and the World Wide Web Invitation to Computer Science, C+ Version, Third Edition 2004 Course Technology Additions by Paul Durand, Ke S Univ, 2005 nt tate Objectives In this chapter, you will learn about...
Kent State >> CS >> 07 (Fall, 2009)
Chapter 7: Computer Networks, the Internet, and the World Wide Web Invitation to Computer Science, C+ Version, Third Edition 2004 Course Technology Additions by Paul Durand, Ke S Univ, 2005 nt tate Objectives In this chapter, you will learn about...
Kent State >> CS >> 0 (Fall, 2009)
Chapter 1: An Introduction to Computer Science Invitation to Computer Science, C+ Version, Third Edition Objectives In this chapter, you will learn about: The definition of computer science Algorithms A brief history of computing Organization of ...
Kent State >> CS >> 01 (Fall, 2009)
Chapter 1: An Introduction to Computer Science Invitation to Computer Science, C+ Version, Third Edition Objectives In this chapter, you will learn about: The definition of computer science Algorithms A brief history of computing Organization of ...
Kent State >> CS >> 0 (Fall, 2009)
Chapter 6: An Introduction to System Software and Virtual Machines Invitation to Computer Science, C+ Version, Third Edition Objectives In this chapter, you will learn about: System software Assemblers and assembly language Operating system...
Kent State >> CS >> 06 (Fall, 2009)
Chapter 6: An Introduction to System Software and Virtual Machines Invitation to Computer Science, C+ Version, Third Edition Objectives In this chapter, you will learn about: System software Assemblers and assembly language Operating system...
Kent State >> CS >> 0 (Fall, 2009)
Chapter 4: The Building Blocks: Binary Numbers, Boolean Logic, and Gates Invitation to Computer Science, C+ Version, Third Edition Objectives In this chapter, you will learn about: Boolean logic and gates The binary numbering system Building com...
Kent State >> CS >> 04 (Fall, 2009)
Chapter 4: The Building Blocks: Binary Numbers, Boolean Logic, and Gates Invitation to Computer Science, C+ Version, Third Edition Objectives In this chapter, you will learn about: Boolean logic and gates The binary numbering system Building com...
Kent State >> CS >> 0 (Fall, 2009)
Chapter5:Computer SystemsOrganization Invitation to Computer Science, C+ Version, Third Edition Objectives In this chapter, you will learn about: The components of a computer system Putting all the pieces together the Von Neumann architecture The...
Kent State >> CS >> 05 (Fall, 2009)
Chapter5:Computer SystemsOrganization Invitation to Computer Science, C+ Version, Third Edition Objectives In this chapter, you will learn about: The components of a computer system Putting all the pieces together the Von Neumann architecture The...
Kent State >> CS >> 0 (Fall, 2009)
Chapter2:Algorithm DiscoveryandDesign Invitation to Computer Science, C+ Version, Third Edition Objectives In this chapter, you will learn about: Representing algorithms Examples of algorithmic problem solving InvitationtoComputerScience,C+Ve...
Kent State >> CS >> 02 (Fall, 2009)
Chapter2:Algorithm DiscoveryandDesign Invitation to Computer Science, C+ Version, Third Edition Objectives In this chapter, you will learn about: Representing algorithms Examples of algorithmic problem solving InvitationtoComputerScience,C+Ve...
Kent State >> CS >> 35101 (Fall, 2008)
CS35101- Computer Architecture Overcoming Control Hazards Paul Durand ( www.cs.kent.edu/~durand ) [Adapted from M Irwin (www.cse.psu.edu/~mji) ] [Adapted from COD, Patterson & Hennessy, 2005, UCB] Review: Datapath with Data Hazard Control PCSrc ID...
What are you waiting for?