Вы находитесь на странице: 1из 4

C E N 5 5 9 3 Advanced Computer Architecture

Summer 2018

ECEN5593 presents the principles, characteristics, and trends of computer systems design
at a level appropriate for all computer scientists and computer engineers. Computer
architecture expands on the role of a traditional computer architecture course, with a focus
on parallel hardware design, to include aspects of modern multicore and Graphics
Processing Unit (GPU) processors, operating systems, compilers, and application software.

3 credits

Registration details:

Students outside the University of Colorado Boulder wishing to enroll can use the 407B
section- register as Professional Certificate students by clicking the “Apply Now / Certificate”
button on our ESE home page.

Embedded
Systems Engineering and the Internet of Things
At the end of this course, students will be able to:
 Recognize the relationships between computer design, application & computing
domain requirements, cost/performance tradeoffs, and business trends in the
computer industry.
 Utilize performance monitoring and instrumentation tools to evaluate runtime
workloads on hardware architectures and software environments.
 Analyze a given problem for possibilities of parallel computations and design codes
in parallel programming
 Design and develop complete computer architecture research simulators to analyze
the potential bottlenecks and opportunities in applications domains on architectures.
 Assess the performance of application implementations and optimize the
performance of codes.

Logistics
 PLEASE NOTE: All content on the page subject to and probably will change
 Lectures: Monday, 4:00 - 8:00pm, ECCR 1B51
 Office hours: by appointment
 Instructor's Contact Information:
o Dan Connors (dconnors@colorado.edu)

Prerequisite(s)
 Knowledge of assembly and C programming, digital logic design, and embedded
computer architecture.
 Students should have had at least one course in each of the above subjects.
 Students should also have experience using an Integrated Development
Environment (IDE) for programming and its associated capabilities of compilation
and debugging.

Course Expectations
 Lectures, Programming Assignments/Course Project, Readings, and Quizzes will
require on average 10-14 hours per week of work
 For on campus students, class attendance is expected. For distant learners, videos
will be available.
 Course Description and Topics covered

Advanced Computer Architecture (ACA) covers advanced topics in computer architecture


focusing on multicore, graphics processor unit (GPU), and heterogeneous SOC
multiprocessor architectures and their implementation issues (architect's perspective). A
range of levels are explored from deep submicron CMOS characteristics, microarchitecture,
compiler optimization, parallel programming, run-time optimization, performance analysis &
tuning, fault tolerance, and power-aware computing techniques.

The objective of the course is to provide in depth coverage of current and emerging trends
in computer architecture focusing on performance and the hardware/software interface. The
course emphasis is on analyzing fundamental issues in architecture design and their impact
on application performance. To enable a better understanding of the concepts, hands-on
assignments are used to explore issues in multicore and GPU architecture systems.
Students have options in exploring their own interests in custom projects and assignments.

o ILP and TLP architectures and designs: superscalar, VLIW, multi- threaded,
multicore, Graphics Processor Unit (GPU), etc.
o Compiler techniques for instruction-level, thread-level, and memory-level
parallelism
o Architectures and compilers for embedded processors, DSPs, ASIPs
(network processors, multimedia, wireless)
o Dynamic optimization, emulation, and object code translation
o Software/hardware speculation and prediction schemes
o Ultra-low power designs, design efficiency optimizations
o Microarchitectures for reliability, dependability, and security
o Microarchitecture modeling and simulation methodology
o Architectures for new computing paradigms

GPU Programming and Parallel Programming Experience

o CUDA programming for NVIDIA GPUs


o OpenCL (Open Compute Language)
o OpenMP (Multi-Processing) implementation and examples
Readings
Course materials include textbooks, papers, lecture slides, project guides, and other online
materials.

 Required textbooks:
o Hennessy and Patterson, Computer Architecture - A Quantitative Approach,
4th or later Edition (ISBN 13: 978 - 0123704900 ISBN - 10: 0123704901
Edition: 4th)
 Course website
o Course lecture slides posted weekly on D2L
o Course labs and project material posted weekly on D2L

Grading
The course grade will be based on homework assignments, checkpoints, course projects,
and 1 exam. The grade proportions are as follows:

 Homework 20%
 Course project 20%
 Checkpoints 40%
 Final Exam 20%

Honor code
A complete description of the honor code can be found here .

To summarize: "Violations of the Honor Code are acts of academic dishonesty and include
but are not limited to plagiarism, cheating, fabrication, aid of academic dishonesty, lying to
course instructors, lying to representatives of the Honor Code, bribery or threats pertaining
to academic matters, or an attempt to do any of the aforementioned violations."

Made with the new Google Sites, an effortless way to create beautiful sites.

Вам также может понравиться