Students
Tuition Fee
Start Date
Medium of studying
Duration
Details
Program Details
Degree
Bachelors
Major
Computer Programming | Computer Science | Software Engineering
Area of study
Information and Communication Technologies | Engineering
Course Language
English
About Program

Program Overview


University of Patras Programs

The University of Patras offers a range of programs for students.


Department

The department is divided into several sections, including:


  • Presentation
  • Location-Building
  • Administration

Presentation

The presentation section includes:


  • Studies
  • Chair's Welcome
  • Evaluation
  • Comitees
  • Ethics
  • Special Interest Student Groups

Location-Building

The location-building section includes:


  • Library
  • Computer Center

Administration

The administration section includes:


  • General Assembly

Education-Studies

The education-studies section is divided into:


  • Undergraduate
  • Postgraduate & Phd
  • Labs

Undergraduate

The undergraduate section includes:


  • New Students Registration
  • Study Guide
  • Compulsory Courses
  • Elective Courses
  • Transitional Provisions
  • Academic Tutor
  • Special Entrance Exams
  • Academic Calendar

Postgraduate & Phd

The postgraduate and PhD section includes research activities.


Staff

The staff section is divided into:


  • Academic Office
  • Faculty
  • Supporting Staff

Information

The information section includes:


  • Announcements
  • Useful Documents
  • Research
  • Divisions

Systems Programming Course

Course Details

  • Course ID: CEID_25Y401
  • Semester: 7, Winter
  • Department: Division of Computer Software, Division of Hardware and Computer Architecture
  • Professor: HADJIDOUKAS PANAGIOTIS, PAPADIMITRIOU GEORGIOS
  • ECTS: 5

Course Description

The course examines the design principles and system-level aspects of parallel computing from the perspective of computer architecture and parallel processing. It covers techniques for developing efficient code on modern computing systems, leveraging the memory hierarchy, analyzing data dependencies, and using vector instructions, either directly or through the compiler.


Course Outline

The course includes the following thematic units:


  • Basic performance concepts (FLOPs, MIPS, execution time)
  • Processors: ILP, pipelines, superscalar, VLIW
  • Processes and IPC (inter-process communication)
  • Fundamental principles of parallelism (Amdahl's Law, Flynn's taxonomy)
  • Use of threads and compiler optimizations
  • Parallel programming with OpenMP (basic → advanced → tasks)
  • SIMD and vectorization
  • Caches and multicore systems (MIMD)
  • Memory coherence and consistency (atomic, critical, MSI, etc.)
See More
How can I help you today?