Computer systems process and store information, including instructions, inputs, and outputs. Computers represent, or "encode", this information with bits -- zeros and ones -- such that a given sequence of bits can describe a number, an instruction, a character to print to the monitor, etc. The choice of bit patterns used to encode different types of information impacts the performance, reliability, and energy-efficiency of a computer. This project -- which is an interdisciplinary collaboration between a computer systems architect and an expert in information coding -- will develop new information representations that improve performance, reliability, and energy-efficiency. This project will have both technical impact on computer system design and information coding, and it will impact society through its training of students (both graduate and undergraduate) and an outreach program that brings under-represented minorities to Duke for summer research experiences.

This project will make technical advances in four main avenues. First, the project will develop new representations for the information that is stored in write-limited storage media like Flash, with the goal of extending its lifetime. A key coding technology in this research thrust is coset coding, in which the system has multiple choices for which codeword to write to the storage and can choose the option that incurs the least wear. Second, the project will develop new codes, based on existing locally repairable codes, for writing to all types of storage that can suffer permanent failures. These codes can enable efficient, local repair of failures by minimizing the number of storage locations that must be accessed to perform the repair. Third, the project will develop new representations of instructions to improve performance and energy-efficiency. In particular, the project will develop new encodings of instructions for GPUs that enable useful work to be done even in the presence of branch divergence. Fourth, the project will develop and apply network coding techniques to improve the performance and reliability of communication between processor cores.

Project Start
Project End
Budget Start
2014-08-01
Budget End
2018-07-31
Support Year
Fiscal Year
2014
Total Cost
$458,000
Indirect Cost
Name
Duke University
Department
Type
DUNS #
City
Durham
State
NC
Country
United States
Zip Code
27705