码迷,mamicode.com
首页 > 系统相关 > 详细

一个进程能不能在多个核上跑?

时间:2015-07-01 11:56:00      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:

保持cache一致性自然要靠cache一致性协议。cache的不一致,是因为同样一份数据在多个cache中存在多份拷贝,如果数据在一个cache中被写另一个cache却不知道,就会有不一致。对于多核共享cache最基本的方法就是写失效和写更新两种。每个核的专有cache要时刻监听总线上的写cache请求,一旦监听到总线要写的cache块自己肚子里也有,就将自己肚子里的cache块置为失效(写失效),等到下次该块cache miss再重新load最新的数据。或者在总线更新某块的时候,刚好自己肚子里也有一份该块的拷贝,顺便把自己内部的cache块也更新了(写更新),就可以保证自己一直是最新的数据。

从硬件原理上来讲,主要就是做到写操作即时即刻的传递给所有的核/cache。写操作一定要广播出去,只要通知到位,就有办法。

一个进程能不能在多个核上跑?

标签:

原文地址:http://www.cnblogs.com/foohack/p/4612459.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!