enter search term and/or author name
Minos: Architectural support for protecting control data
Jedidiah R. Crandall, S. Felix Wu, Frederic T. Chong
We present Minos, a microarchitecture that implements Biba's low water-mark integrity policy on individual words of data. Minos stops attacks that corrupt control data to hijack program control flow, but is orthogonal to the memory model. Control...
Analysis of cache-coherence bottlenecks with hybrid hardware/software techniques
Jaydeep Marathe, Frank Mueller, Bronis R. de Supinski
Application performance on high-performance shared-memory systems is often limited by sharing patterns resulting in cache-coherence bottlenecks. Current approaches to identify coherence bottlenecks incur considerable run-time overhead and do not...
Future execution: A prefetching mechanism that uses multiple cores to speed up single threads
Ilya Ganusov, Martin Burtscher
This paper describes future execution (FE), a simple hardware-only technique to accelerate individual program threads running on multicore microprocessors. Our approach uses available idle cores to prefetch important data for the threads executing on...
Evaluating trace cache energy efficiency
Michele Co, Dee A. B. Weikle, Kevin Skadron
Future fetch engines need to be energy efficient. Much research has focused on improving fetch bandwidth. In particular, previous research shows that storing concatenated basic blocks to form instruction traces can significantly improve fetch...
Effective management of multiple configurable units using dynamic optimization
Shiwen Hu, Madhavi Valluri, Lizy Kurian John
As one of the promising efforts to minimize the surging microprocessor power consumption, adaptive computing environments (ACEs), where microarchitectural resources can be dynamically tuned to match a program's run-time requirement and...
Implicit array bounds checking on 64-bit architectures
Chris Bentley, Scott A. Watterson, David K. Lowenthal, Barry Rountree
Several programming languages guarantee that array subscripts are checked to ensure they are within the bounds of the array. While this guarantee improves the correctness and security of array-based code, it adds overhead to array references. This...