- == 系统问题,暂停聊天功能。==
- 【征集】西西河的经济学,及清流措施,需要主动参与者,『稷下学宫』新认证方式,24年网站打算和努力目标
主题:世界首台100P超级计算机-神威太湖之光在中国诞生了! -- 尖石
共:💬105 🌺723 🌵7 新:
你比siri聪明多了,以后有事问你了
如果内存数据是连续的,其读写就偏向于理想情况,同时取1k次64k内存和取1次64M内存,很多时候差距不是那么显著。Linpack数据是规规矩矩排好的,编译器也知道CPU的缓存大小之类的信息,计算线程一次读取连续的一段数据,cache miss被最小化,因此缓存超过一定大小很多时候差距不甚显著。
对于这个仍然有疑惑:我的理解是,如果需要的数据随机分散在内存中,会造成大量的cache miss,因而需要反复读内存。耗时主要发生在线程调度、拥挤的处理器-内存带宽和内存材质固有的高响应时间。“随机寻址”本身并不会耽误时间,因为毕竟不是磁带机。
倘若这样,64k的缓存容量,即使完全不miss,也会导致1000倍的 memory access——数据用完了,只好重新装载下一拨数据。这意味着要把整个流程重新走一遍。
所以比较不理解一个数据完全顺序储存的程序,为什么会在相差1000倍容量的缓存上,得到接近的成绩(假设浮点运算时间和IO时间权重相当)。
- 相关回复 上下关系8
压缩 3 层
🙂说下个人看法 3 红茶冰 字951 2016-07-31 08:31:19
🙂请教一下Linpack和HPCG跑分问题 预备役师的防化 字640 2016-06-21 19:40:23
🙂数据移动速率也会影响Linpack,但是影响比较小 22 HAL9000 字2299 2016-06-22 03:44:08
🙂9000,你这么牛逼,你的开发者知道吗?
🙂随机寻址当然影响性能 2 大山猫 字332 2016-06-22 16:26:49
🙂我并不知道内存寻址是怎么工作的 预备役师的防化 字564 2016-06-22 17:17:56
🙂内存读写一样要寻址 3 大山猫 字555 2016-06-22 17:46:28
🙂中间层优化也很重要,就是编译器! 小米粒 字1138 2016-06-25 07:42:20