A recent shift from single-core to multi-core and many-core architectures and rising complexity of both hardware and software pose a number of challenges to computer systems industry. Computer architecture research is crucial to find new approaches for designing, programming, debugging, and operating future computer systems.
In this talk we will discuss challenges related to system designers’ and programmers’ productivity and how computer architecture may help solve these challenges. The time system designers spend in post-silicon debug and verification has grown steadily as we move from one technology generation to the next, due to a number of factors: (a) ever-increasing hardware complexity, (b) limited visibility of internal signals due to increased integration, and (c) reduced component reliability due to aggressive semiconductor technologies. On the other side, growing software complexity often leads to project failures or lost revenue if very tight time-to-market goals are not met. Software developers typically spend ~80% of their development time in program debugging. This time is likely to continue growing with a shift from single- to multi-threaded applications -- developing parallel programs is known to be a more challenging task than developing sequential programs. In such conditions, answering a simple question “What is my system doing now,” becomes critical.
We will discuss how we answer this question today and how we will answer this question in the near future. First, we will talk about state-of-the-art in program tracing and debugging in embedded computer systems and shed more light on some of the challenges. Then, we will talk about recent research efforts in the LaCASA laboratory targeting architectures for increased programmers’ productivity. We will describe several architectural innovations that offer an order of magnitude improvement in program tracing capabilities at reasonable hardware overheads.
Aleksandar Milenković is an associate professor in the Department of Electrical and Computer Engineering at the University of Alabama in Huntsville. He currently directs the Laboratory for Advanced Computer Architectures and Systems (LaCASA, http://www.ece.uah.edu/~lacasa/). Dr. Milenkovic’s research focuses on advanced architectures for the next generation of high-performance, cost-effective, and secure computing devices, embedded systems, reconfigurable computing, and sensor networks. Dr. Milenkovic received his Dipl. Ing., M.Sc., and Ph.D. in Computer Engineering and Science from the University of Belgrade. More information is available at http://www.ece.uah.edu/~milenka/.