15 August 2016 at 11:00
Introduction to the most important concepts and principles in the area of energy-aware computing.
Where is energy-aware computing required?
Where in a computer is most energy spent?
How much money is lost on wasted energy?
How can we mitigate wasting energy?
What are future developments?
16 August 2016 at 09:00
The fundamental building blocks of almost every computer system, a high level description of how they work, what they do and how they play together.
How can we identify and understand the basic building blocks of a computer system and their responsibilities without going into too much detail?
What components are those parts made of in general and, roughly, how do they fulfil their tasks?
How do these building blocks communicate and work together?
Who is in charge, what does the control flow look like and which channels are used to delegate tasks.
Roughly, how fast and energy efficient are the various parts or processes in comparison to each other?
16 August 2016 at 10:15
A closer look on properties and usages of different types of memory.
What kinds of memory are there in a typical computer system?
How do they work on a hardware level and what are their properties with respect to volatility, feature size, speed, energy consumption, cost, etc.?
Given these properties, which type of memory is used in which parts of a computer system?
How does this all lead to the overall memory hierarchy?
How does the memory hierarchy differ for various computer systems (from supercomputers to embedded devices)?
What are some cutting edge methods to enhance memory size, speed and energy efficiency?
16 August 2016 at 11:30
A closer look on what is inside a processing unit and how it works.
What are the different parts of a typical CPU and what is each of them responsible for?
Are there any fundamental limitations on execution speed, throughput and power consumption?
How is a program executed, i.e., what is the fetch-(decode)-execute-(write) loop?
What are common issues arising in this execution cycle (see branching)?
How does pipelining work, why should we care and what are its limits?
Can we shed light onto the buzzwords simultaneous multithreading, hyperthreading, multitasking, superscalar architectures, SIMD and parallel computing and put them in context?
17 August 2016 at 09:00
An overview of the programming techniques required to leverage embedded devices using the C programming language.
Very briefly, what are the bare essentials a beginner needs to know about C?
What is a pointer from the device's perspective and how can we declare / work with a pointer?
In short, what do I need to know and understand to become a pointer expert?
Why is C so popular for programming embedded devices and how do pointers fit in the picture?
What compilers / platforms exist and what are the main differences?
What are the greatest challenges using C with embedded devices?
How does one get started programming an Arduino or Texas Instruments device using the Arduino or Energia platform?
17 August 2016 at 10:45
Embedded devices typically do not only support completely custom output (GPIO), but also profit from standardized interfaces for communication. We will focus on I2C and SPI as two pivotal representatives.
What makes a pin a GPIO pin?
How does the I2C protocol look like?
What is a timing diagram and how can we use one to illustrate the details of the I2C protocol?
Can the specific implementation be abstracted away to understand the key features of any communication protocol?
Briefly, how does the SPI bus differ from I2C?
How do I2C and SPI compare with respect to speed, prevalence in industry and other aspects?
How can we use the GPIO pins of the Raspberry Pi and of an Arduino / a Texas Instruments device?
How does one get an Arduino or a Texas Instruments device to talk to a sensor via I2C?
18 August 2016 at 09:00
To discuss energy efficiency we have to go down to the smallest building blocks - transistors. We explain the physics of CMOS components and thereby discover where most power is consumed.
What is a transistor in general, how is it made and what are its properties?
What are CMOS components, why do we care and what are their characteristics?
How do single transistors form logical units and what does the physical layout of a typical CMOS component, e.g., a NAND gate, look like?
In which ways is power dissipated in CMOS components?
Roughly, what are the key drivers of power dissipation and can we model that mathematically?
What is subthreshold and gate leakage?
What architectural techniques exist to reduce leakages?
Power-Efficient System Design Ch. 1 and 2
Low-Power CMOS Circuits Ch. 1 and 3
18 August 2016 at 10:15
A closer look on one of the most important power management aspects, dynamic adjustment of the supplied voltage and the effective clock frequency to current demands.
What role do supply voltage and clock frequency play in terms of power consumption?
How can dynamic voltage and frequency scaling (DVFS) be achieved?
What is the benefit that can be obtained in hardware vs. software?
What implementations exist on the market?
Is there any general advice you can give a computer system designer on supply voltage and clock frequency?
Computer Architecture Techniques for Power-Efficiency Ch. 3.1, 3.2, and 3.4
18 August 2016 at 11:30
As one of the most important parts of any computer systems, memory also adds substantialy to the overall power consumption. We will explore some advanced techniques to minimize energy waste.
Can you remind us quickly about memory organization and caches?
How can we quickly understand key drivers of energy consumption when it comes to different kinds of memory and caches?
What are the basic ideas to reduce power consumption of accessing memory both on the lower level (transistors) and the higher level (memory organization)?
How can one approach the lower level optimizations?
How are higher level ideas implemented? (Probably not all of them, choose some important ones.)
Computer Architecture Techniques for Power-Efficiency Ch. 4.2 - 4.12
Power-Efficient System Design Ch. 3 and 4
19 August 2016 at 09:00
Everyone talks about the Internet of Things, but many underestimate the security implications. This talk discusses the problems and techniques to securely run software on embedded devices.
How are embedded devices different from normal computers when it comes to security concerns?
What kinds of software vulnerabilities exist not only in IoT devices but embedded systems in general?
How can communication be secured?
What are TPM and HSM?
What are the differences between a TPM and an HSM?
What other hardware aspects have to be considered to obtain high-security?
19 August 2016 at 10:45
Usually worst-case component specifications are used in component design. Given that most systems operate under typical conditions rather than worst-case conditions, this implies a significant performance cost.
What does worst-case specification mean?
On which levels do we find conservative worst-case design choices and why?
How much power is potentially lost by worst-case designs?
In which areas exists a significant discrepancy between the worst-case specification and the typical runtime conditions?
How can these descrepancies be exploited for performance improvements?
Why does frequency tuning work, e.g., for PC gamers?
What mechanism(s) can be used to lower the voltage automatically?
When is the inductance-caused power supply voltage-droop problem relevant?
What can be done in circuit design to improve efficiency, i.e., perform TCO?
What are the biggest challenges of better than worst-case design?
22 August 2016 at 09:00
Everyone talks about the cloud yet many people don't have a proper understand of cloud computing. This talk discusses the most important details and concepts.
What is the definition of cloud computing?
What are IaaS, PaaS, and SaaS?
Where would cloud storage (e.g., Dropbox) be located?
Advantages (and disadvantages) of cloud computing?
What characteristics does a microservice show?
Why do microservices leverage cloud computing?
Can you show a sample microservice architecture?
22 August 2016 at 10:15
An overview over state-of-the-art wireless communication technologies with the focus on security and power-awareness.
What technologies exists / are currently used?
What are their physical properties (e.g., frequency)?
How power intense are they?
What are the differences between Bluetooth and BTLE?
How does the WiFi protocol look like?
How does RFID work?
What is ZigBee?
Wireless Communications and Networks Ch. 13 - 15
High Performance Browser Networking Ch.5 - 7
22 August 2016 at 11:30
Data centers require high-throughput and low-latency network connections. This talk compares the ordinary Ethernet solution to InfiniBand.
What is the OSI model?
Which Ethernet standards / solutions are currently available?
What is InfiniBand?
What are the key advantages of InfiniBand over Ethernet?
What is RDMA and how can it be utilized?
How much power can be saved (primary and secondary effects) by using InfiniBand?
Wireless Communications and Networks Ch. 3 and 4
High Performance Browser Networking Ch. 2 and 3
24 August 2016 at 09:00
Heat dissipation and cooling is one of the big challenges for computer systems on all scales. We discuss various basic approaches.
How much heat do different systems from a small microprocessor to huge supercomputers and server farms produce?
Which cooling approaches are used for various systems?
How much money and energy is typically spent on cooling large systems?
How does air cooling work and how can we improve ordinary air cooling?
What kind of water cooling solutions exist?
What is immersion cooling?
Why don't we all use water cooling?
Can you describe the architecture of the cooling solution used by a standard data center?
24 August 2016 at 10:45
Discussion on the application and realization of hot-water cooling.
Which large systems use hot-water cooling?
What is the benefit over ordinary water cooling?
Can you quantify the efficiency improvement compared to air cooling?
What is the standard water circuit diagram for this setup?
What are the biggest challenges on the hardware / construction side?
25 August 2016 at 09:00
We explore the ARM architecture and why it is such a huge success.
What are the characteristics and differences of RISC and CISC architectures?
What are the key features of the ARM architecture?
How exactly can ARM chips reduce power consumption and heat dissipation compared to other architectures?
How successful are ARM chips in different fields / devices?
Can you go into some detail about the register set, the instruction set and the evolution of the pipeline in ARM architectures?
What would it take for a new or completely different architecture to be as successful and do you think this is possible in the near future?
Computer Organization and Design, The Hardware/Software Interface The `Real stuff` sections on ARM
25 August 2016 at 10:15
We explore why GPUs are a common tool in high-performance computing, how heterogeneous system architecture works and what other specialized hardware components exist.
What are the characteristics of a GPU compared to a regular CPU?
Which properties makes GPUs attractive for high performance computing (HPC)?
What are the advantages and disadvantages of heterogeneous system design?
What are co-processors used for in HPC?
Can you describe an important example of a widely used co-processor in more detail?
What are ASICs and FPGAs and where do you see their potential in HPC and other large scale applications?
25 August 2016 at 11:30
In high performance or energy limited applications every clock cycle counts. We explore how code can be optimized on lower levels.
Why would most code (e.g. normal if-then-else structures and loops) be slow when executed exactly like it is written?
Which issues can slow down execution / require unnecessary cycles that could in principle be circumvented?
Can you give an overview of the various possible techniques and what they aim at?
Which optimizations can be performed during compile time?
Can we still achieve optimizations during run time?
26 August 2016 at 09:00
Homogeneous architectures seem to be outdated - these days specialized components are mixed to increase efficiency for predefined applications.
What are the problems of homogeneous systems?
What is the anticipated MTBF for an exaflop system?
How can heterogeneous architectures help to increase performance?
Which challenges are faced in the design of heterogeneous architectures?
Can you name 2-3 examples of real systems exhibiting an heterogeneous architecture?
What problems occur in the implementation of software for such systems?
Which components are mixed (and why), which won't be mixed (and why)?
26 August 2016 at 10:15
In recent years the list of the 500 most efficient supercomputers has gained importance and could be seen as an indicator for Green IT in general.
What requirements need to be fulfilled to enter the Green 500?
How can this list be seen as an indicator for Green IT?
What overlap exists between supercomputers and ordinary computers?
Why is Green IT necessary?
What trends can be observed and how do these trends usually develop?
Missing an interesting topic? Contact us!