I am using NSM to exchange data between separate processes, and it's all working fine and dandy, however the memory space is declared in the page file, which I think is a default way of doing it.
hMapFile = CreateFileMapping(
INVALID_HANDLE_VALUE, // use paging file
NULL, // default security
PAGE_READWRITE, // read/write access
0, // maximum object size (high-order DWORD)
BUF_SIZE, // maximum object size (low-order DWORD)
szName); // name of mapping object
My question is, is the file declared on the disk, then the actual contents are put into the RAM, and accessed from there? I have been doing experiments on my home computer, which is an i5 4 core, 16 GB 1800 MHz RAM and SSD, and the same experiments on a laboratory's i9 12 core, 32 GB 2800 MHz RAM with an HDD.
The "better" computer is slower by many times (same experiment parameters), but I was told it doesn't have anything to do with SSD or HDD. The experimental algorithm uses NSM heavily for data exchange, so if it has to access a file on the disk, I can see why it is slower, but if it is all RAM... then?