天人合一之毕设——实践阶段8—— 全面测试、优化策略的测试与实施

    上次去找师兄聊了聊,首先对前期工作他回答了我不用考虑库函数

    其次,对象大小开的有点小,可以尝试开到1G左右

    而且只用一个程序不够丰满,让我在网上再找3个较简单的程序进行全面测试

    要找肯定尽量找那些有访存特性的程序,增删改查、搜索之类的

    目前觉得可能可以去试试找:二分查找、链表的增删改查、二叉树遍历、图遍历等程序

    对于下一步的工作

    1.设计优化策略

    (1)层次结构:NVM做主存,DRAM做加速器

            一开始全部放在NVM中,监测到局部热的时候(循环)迁移到DRAM中,局部热结束后迁回

            有一个问题:比如一个对象有两段局部热,用一次迁入迁出会不会好一点

            毕竟迁移自身也要付出时间和读写的代价

扫描二维码关注公众号,回复: 4245985 查看本文章

            当访存特征符合二八定律时,我们是不是可以认为那些占用了多次读写的少数对象一定是经历了循环体

            关于监测局部热,目前想到的思路是这样:

            在原有的逐行监测基础上,遇到循环体,之前是对象访问次数*repeatcount

            我们在对象属性里添加一个属性,即对象在每个循环体里访问的次数顺序表,并记录下循环体位置

            到时候等统计完总体的了,我们再来看是根据固定值还是百分比来划分阈值

    (2)平行结构:一个整体

            根据阈值进行预放置,读写密集的放入DRAM,其他放入NVM

            这要根据访存概率分布来看了,分两种情况

            1)符合二八定律  那就是将少数访问多的对象放入DRAM,其余NVM

            2)均匀分布,用一刀划的方法肯定不太好,那这种情况得出一个坏结果也是可以的

                  如果是均匀的少,这种分布可能更加适合层次结构,一开始就全部放在NVM中

                  如果是均匀的多,那么可能有一部分被放入DRAM中是由于全放在NVM中的

                   但是一般情况很难出现访问很均匀的情况的,到时候看结果再说吧

        2.实施优化策略

            就是和前面类似的一个插桩过程

        3.撰写论文

            按师兄的提醒,思路代码好解决,论文很难造,最好边做边写论文

            目前把第一章绪论写的差不多了,可是思路部分,尤其是前面的分析程序,真的很难写啊....啊啊啊,哭唧唧

猜你喜欢

转载自blog.csdn.net/zhiman_zhong/article/details/79784641