Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2214230
  • 博文数量: 436
  • 博客积分: 9833
  • 博客等级: 中将
  • 技术积分: 5558
  • 用 户 组: 普通用户
  • 注册时间: 2010-09-29 10:27
文章存档

2013年(47)

2012年(79)

2011年(192)

2010年(118)

分类: LINUX

2012-12-17 18:20:11

Execution Migration in a Heterogeneous-ISA Chip Multiprocessor

这篇文章里介绍了一个在异构指令集架构单芯片多处理器上的指令转移的新技术。

CMPChip multiprocessors单芯片多处理器

ISAinstruction set architecture 微处理器的指令集架构,指令集架构是与程序设计有关的计算机架构的一部分,包括本地数据类型、指令、寄存器、地址模式、内存架构、中断和意外处理和外部 I/O

 

单指令集架构和多样的单芯片处理器可以得到更高的性能和功耗效率。

异构指令集架构单芯片处理器可以灵活的产生更有效地多核微处理器。

 

线程转移原因:

当计算机的能源状态变化时,比如,当计算机从普通的变成低耗能系统时,程序运行会从高性能转移到高能源效率上。

当一个拥有高优先级和高性能的新的进程进入到运行队列时,其他进程会转移到别的内核上。

当一个进程进入到有不同计算要求的新的执行阶段时,进程会转移到一个支持新计算类型的内核上。

如何芯片的一部分变得太热,运行在该内核上的程序会转移到别的内核上。

 

研究的目的在转移时间中减少转化时间的消耗。使转化时间最小化,要尽可能的减少转化。(转化包括哪些转化?)

限制ISAs和特殊之间的转移,支持程序中任意点在核之间转移。

heterogeneous-ISA migration的四个任务:进程调度(process scheduling),页表操作(page table manipulation二进制译码binary translation),状态转移(statetransformation),后两个任务是异构指令集单芯片多处理器特有的任务。

 

堆栈变化Stack Transformer (ST)三个工作:

1)为任务将转移到的内核产生寄存器状态

2)整理了所有堆栈中的返回地址

3)将局部变量的值转移到正确的堆栈偏移

 

二进制译码发生在一个转移的进程到达一个时。

二进制译码利用以下方式进行动态译码:

从正在转移的指令开始,每一条指令都翻译成ISA,并放入代码缓存中,直到遇到一个函数调用或者是条件转移指令。

然后,一个加到翻译完的指令的后面,stub包括遇到函数调用时如何转移,还存储了目标地址和如何到达翻译区域。

控制器转移到代码缓存中的代码翻译中,如果代码拒绝控制器回到翻译区域,则重复以上步骤直至得到函数调用。

 

问题

英文的缩写意思不是很明白。

equivalence point翻译成中文应该是什么,具体含义是什么?

阅读(1007) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~