Implementing virtual memory in a vector processor with software restart markers
Implementing virtual memory in a vector processor with software restart markers
复制标题
使用软件重启标记在矢量处理器中实现虚拟内存
DOI:
--
复制
发表时间:
2006
期刊:
影响因子:
--
通讯作者:
K. Asanović
中科院分区:
文献类型:
--
作者:
M. Hampton;K. Asanović
Traditional vector architectures often lack virtual memory support because it is difficult to support fast and precise exceptions for these machines. In this paper, we propose a new exception handling model for vector architectures based on software restart markers, which divide the program into idempotent regions of code. Within a region, the processor can commit instruction results to the architectural state in any order. If an exception occurs, the machine jumps immediately to the exception handler and kills ongoing instructions. To restart execution, the operating system has just to begin execution at the start of the region. This approach avoids the area and energy overhead to buffer uncommitted vector unit state that would otherwise be required with a high-performance precise exception mechanism, but still provides a simple exception handling interface for the operating system. Our scheme also removes the requirement of preserving vector register file contents in the event of a context switch. We show that using our approach causes an average performance reduction of less than 3% across a variety of benchmarks compared with a vector machine that does not support virtual memory.