[理工] page fault计算疑问 (更新图

楼主: eggy1018 (羅密歐與豬過夜)   2018-11-18 23:14:14
想请教大家一题原文书上面的题目,请参考下图
https://i.imgur.com/NCvhvIR.jpg
我自己的想法是内存是row major存放资料,所以如果最外面的循环存的是row所以
可以一直存,直到一个page大小用完,即使外面循环跑两次也没关系,这是我看答案
的理解,但一直很难说服自己为什么可以这样。
相对的,如果外循环存的是column就没办法想像会怎么跑了,只知道会产生相对多很
多的page fault。
另外再请教一个问题,在这两种存矩阵的方式下所占用的内存大小都一样吗?
是在new int[100][100]时就固定大小了吗?
应该不会受到page fault的影响吧?这边我会一直这样卡住是因为会想到cache miss
会一直搬要存的block上来,怀疑说到底有没有额外的内存空间浪费。
以上问题还有劳考题版各位帮忙,祝大家都金榜题名!
作者: aggress5566 (哩贺)   2018-11-19 00:45:00
http://bfy.tw/KvEa至于new int[100][100] 我记得如果没有 assign value似乎是不会去 allocate memory 这要看实作了
作者: skyHuan (Huan)   2018-11-19 13:38:00
所以楼上有回答到问题吗,小的资质驽钝看不是很懂,更不太懂是在嘘?
楼主: eggy1018 (羅密歐與豬過夜)   2018-11-19 16:52:00
抱歉我没有引用好文章,但这题还是不能明白,希望各位大大能帮忙
作者: aggress5566 (哩贺)   2018-11-19 17:47:00
我的回答就是先去理解C-like 2D array memory layout我是根据原文的疑问猜想原PO的问题是什么至于dynamic memory allocation 我自己的经验是call malloc的话 如果没有assign value似乎是不会真的被swap out new的话也许概念上会类似 实作我没有深究 另外推嘘这种在PTT上没什么 大可以质疑我的推文

Links booklink

Contact Us: admin [ a t ] ucptt.com