The CCCP group works on multiple layers of the system stack. In hardware we work on
designing energy-efficient architectures for throughput computing and hardware
accelerators speeding up hot code regions (e.g. loops). Runtime systems implement
dynamic thread-level parallelism for better performance for desktop and server
applications. Also, energy-efficiency and improved performance for mobile
applications is provided through runtime systems. Moving higher up in the system
stack, we design compiler techniques to detect and avoid concurrency bugs in
multi-threaded applications. We have designed solutions for source-to-source
compilation of stream programs for execution on GPUs. Reliability of systems is
a major concern even in commodity systems. We work on hardware and compiler
techniques providing reliability against hard errors and soft errors. In
summary, the CCCP group focusses on solutions providing better performance,
energy-efficiency, reliability and programmability of applications and the
system.