![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PM
文章平均质量分 78
Sylviawuuuu
这个作者很懒,什么都没留下…
展开
-
PMDK 安装
PMDK 安装1、下载PMDKgit clone https://github.com/pmem/pmdk.git2、安装依赖安装autoconf和 pkg-configsudo apt-get install autoconfsudo apt-get install pkg-config安装libndctl-devel和libdaxctl-develsudo apt-get install libndctl-develsudo apt-get install libdaxctl-d原创 2021-12-02 11:17:48 · 1091 阅读 · 0 评论 -
SIMD指令
转载:https://www.sunxidong.com/357.htmlSIMD原理1、SIMD简介SIMD全称Single Instruction Multiple Data,单指令多数据流,即一条指令处理多条数据,是对CPU基本指令集对扩展。Intel的初代SIMD指令集是MMX,Multi-Media Extension, 即多媒体扩展,因为它的首要目标是为了支持MPEG视频解码。MMX将64位寄存当作2X32或8X8来用,只能处理整型计算。后来Intel进一步实现了SSE、SSE2~SS转载 2021-09-16 11:02:24 · 4497 阅读 · 0 评论 -
Optane PM
Fig 1.Hardware components of a node with NVM in an RDMAcapable cluster.图 1 的右半部分展示了PM组件的概览。 数据存储在 NVM DIMM (3D XPoint) 中,而 XController (XCtrl) 将来自处理器/PCIe 的读/写请求转换为对 3D XPoint 的读/写请求。 XCtrl 有两个重要的特性。 首先,它以缓存行 (CLine) 粒度 (64B) 接收请求,而 3D XPoint 以 XPLine 粒度.原创 2021-07-27 09:47:53 · 254 阅读 · 0 评论 -
持久化内存挑战PERSISTENT MEMORY CHALLENGES
持久化内存挑战翻译自论文:Memory Management Techniques for Large-Scale Persistent-Main-Memory SystemsStorage Class Memory (SCM) 带来的独特机遇带来了一系列新的编程挑战(1)data consistency 数据一致性; (2) 数据恢复 data recovery; (3) persistent memory leaks 持久性内存泄漏; (4)partial writes 部分写入; (5) pers原创 2021-07-21 19:47:15 · 1298 阅读 · 0 评论 -
PMDK的笔记
PMDKpmemobj_create 创建NVM作为一种快速、可字节寻址、持久型的存储,在被以DAX暴露在用户态以后,可以在其上创建很多被mmap的文件,这些被mmap的文件就称之为内存池(Memory pools),当然,有了pmdk之后,内存池的创建就不需要我们自己手动mmap了,可以使用pmemobj_create来完成,接口定义:#define pmemobj_create pmemobj_createWPMEMobjpool *pmemobj_createW(const wchar_t原创 2021-06-01 14:38:58 · 843 阅读 · 0 评论 -
高速缓存的读写
高速缓存的读写问题读操作缓存命中cache hit当程序需要第k+1层的某个数据对象d时,它首先在当前存储在第k层的一个块中找d,如果d刚好缓存在第k层中,那么就是我们所说的缓存命中(cache hit)。该程序直接从第k层读取d,根据存储器层次结构的性质,这要比从第k+1层读取d更快。例如,一个有良好时间局部性的程序可以从块14中读出一个数据对象,得到一个对第k层的缓存命中。缓存不命中另一方面,如果第k层中没有缓存数据对象d,那么就是我们所说的**缓存不命中(cache miss)**当发生缓原创 2021-05-08 16:18:08 · 768 阅读 · 0 评论 -
ROART内存安全 内存泄露
ROART 中的memory safety问题NVM allocators分为两类:1)logging-based allocator使用logging确保操作的原子性,引入了额外的持久化开销。2)post-crash GC在恢复期间,扫描所有的内存区域来回收垃圾数据。减少了在allocation/deallocation操作时的持久化开销,但是随着数据量的增加从而遭受非常长的恢复时间。Allocation Performance:(作者测试了五种常用的NVM分配器)3,4,5,2,1 -原创 2021-04-20 10:13:49 · 478 阅读 · 0 评论