Last modified: 28 Jun 2018 10:27
Course studies the interplay between computer architecture and software design, with the aim to devise efficient systems for a broad range of applications. Processor architecture features (pipeline and cache) are discussed in parallel with the software techniques (for high-level programming or compilation) required to fully exploit the potential of modern hardware.
Hands-on activities include design and execution of small software projects. Alternative software implementations of a target algorithm are compared to understand differences in performance (e.g. execution speed) resulting from the different interactions with the hardware architecture. This allows students to test and deepen their understanding of the subject.
|First Sub Session
|10 credits (5 ECTS credits)
Computer Engineering - the course studies the impact that the application domain, operating systems, technology, high-level languages, compilers have on computer architecture.
Software Engineering - the course studies formal techniques for software development; the interplay of software design and hardware architecture is studied with the aim to improve the performance real-life applications based on modern general purpose microprocessors.
Information on contact teaching time is available from the course guide.
1st Attempt: 1 three-hour written examination paper (80%) and in-course assessment (20%).
The course will include opportunities to assess individual progress with the concepts and material being delivered via laboratory exercises. Feedback will be given over the course of the lab exercises as to the presentation and content of the submissions.
Marked submissions (typically via MyAberdeen) will be returned to the students promptly, including feedback on the laboratory exercises. Whole-class feedback and solutions to past assignment or exams are provided via MyAberdeen.