System Performance Engineering - COMP70075
Aims
Performance engineering is the area of computer science ensuring that computer systems (comprised of hardware as well as software) are responsive, scalable, and efficient. The course aims at introducing fundamental principles and techniques used in performance management of modern computer systems, either purpose-built applications or generic system (single-node as well as distributed). In particular, in this module you will have the opportunity to learn to:
- Design, conduct and interpret a meaningful performance assesments for a given system or application through benchmarking, monitoring and profiling
- Provision computing resources to meet performance requirements for a given system or application
- Resolve performance bottlenecks in software and hardware systems using the appropriate tools and techniques
- Trade-off different resources for each-other to achieve balance in their utilization
Role
Course Leader
Data Processing Systems - COMP60029
Aims
In this module you will have the opportunity to:
- advance your knowledge of data-structures and algorithms to data-processing algorithms and applications
- acquire theoretical and practical knowledge of data processing systems design and implementation for correct results and (close-to) optimal performance
- understand how Database Management Systems (DBMSs) optimize query performance
- understand Data Processing System tuning
- explore challenges & opportunities of cloud-native Data Processing Systems
- explore research directions such as Big Data or data management on modern hardware
Role
Course Leader
System Performance Engineering - COMP60017
Aims
Performance engineering is the area of computer science ensuring that computer systems (comprised of hardware as well as software) are responsive, scalable, and efficient. The course aims at introducing fundamental principles and techniques used in performance management of modern computer systems, either purpose-built applications or generic system (single-node as well as distributed). In particular, in this module you will have the opportunity to learn to:
- Design, conduct and interpret a meaningful performance assesments for a given system or application through benchmarking, monitoring and profiling
- Provision computing resources to meet performance requirements for a given system or application
- Resolve performance bottlenecks in software and hardware systems using the appropriate tools and techniques
- Trade-off different resources for each-other to achieve balance in their utilization
Role
Course Leader