NVMEmulator
所属分类:磁盘编程
开发工具:C
文件大小:1368KB
下载次数:0
上传日期:2018-12-25 09:31:09
上 传 者:
sh-1993
说明: 一个简单的NVM模拟器
(a simple NVM emulator)
文件列表:
Details.txt (3355, 2018-12-25)
Makefile (210, 2018-12-25)
common.h (274, 2018-12-25)
emulator.c (3791, 2018-12-25)
instance.h (13081, 2018-12-25)
large_header.h (24841, 2018-12-25)
pcibox.c (4152, 2018-12-25)
pcibox.h (1873, 2018-12-25)
pcicfg.c (6076, 2018-12-25)
pcicfg.h (1245, 2018-12-25)
references (0, 2018-12-25)
references\xeon-e5-e7-v4-uncore-performance-monitoring.pdf (1458307, 2018-12-25)
## Homemade NVM emulator
This is a simple NVM emulator working on Intel Xeon E5 v4 and E7 v4
The key idea for latency emulation is to count memory access number and
send a function to interrupt the process that is performing memory access
to emulate extra latency.
Accuracy of emulation result is not guaranteed.
## Code
The emulator project is organized as below
- pcicfg.h: describe a PCI configuration space. A PCI cfg space consists of
domain number, bus nmber, device number and function number and
certain byte/word/dword can be accessed with certain offset
within the pcicfg space. Usually, we combine device number and
function number into one byte since device number is between
0 and 31 while function number is between 0 to 7 (so that is 8
bits in total.)
- pcicfg.c: Functions to read and write PCICFG regsiters
- pcibox.h: Encapsulation of pcicfg structure and operations. A pcibox is
a uncore PMON box within certain PCICFG space.
- pcibox.c: Implementation of pcibox and relating operations.
- instance.h: Definition of HA box and relating operations.
- emulator.c: Implementation of an emulator using functions offered by pcicfg.h
- large_hearder.h: This is combination of pcibox.h, pcibox.c, pcicfg.h, pcicfg.c
I really DO NOT want this file, but my Makefile is just not
correct and I DO NOT know why. So I aggregate all the header
files and object files into one to make the Makefile work.
## P.S.
NOTICE:
This emulator is not completely developed by myself, my supervisor's
student Yizhou Shan developed E5 v3 version, but we failed to port it
to E5 v4, so I was asked to develope an E5 v4 version.
Please refer to https://github.com/lastweek/NVM-Emulator
近期下载者:
相关文件:
收藏者: