[Edit, just saw you are using the Samsung nvme driver]
Would do a few things first:
a) Turn off the write cache buffer flushing in Windows device manager for the drive (although, you should be using a UPS with this disabled),
b) Make sure you are using the Samsung nvme driver, not the Microsoft one. (Assuming there is a 64bit Windows 7 version…)
c) there are a few guides that recommend disabling some Windows services as well, but in my experience, makes little difference…
Windows 10 does most of these things for you, plus makes managing and getting more out of modern storage easier.
The above should help increase performance by 10-15%. The performance of your storage depends on not just the raw throughput, but also latency (how quickly the drive responds to a command). The latency of nvme is only a little quicker than SATA ssd. Most of the stats showing how quick a drive is are around the 100,000 - 250,000 input output operations per second IOPS. A quick mechanical drive is only around 150 iops. When many disk commands are issues simultaneously they get queued - the drive checks to see if it can process the read/write commands out of order to speed up the apparent iops. This makes benchmarks appear very quick when the queue depth is high (greater than 32 commands).
Firstly, the software issuing the commands needs to be written so as to send multiple read/write asynchronously without waiting for the for the first read/write to complete. Secondly, in the real world, the queue depth never really goes above 2 for standard not specific workloads. So the random read/write at a very low queue depth is more likely around 10,000 - 20,000. Use task monitor performance tab to look at the disk utilization. The percentage (near 100%) will give a good approximation to the disk usage being saturated, although the throughput may only be 10 MB/s .
In summary, the slow write speeds you are seeing will be due to the process that is writing to the disk being bound by a single threaded operation (which can’t send out data quick enough and is a bottleneck), which also happens to involve lots of random reads and writes at a low queue depth.
As a side note, optane drives have an iops of over 250,000 at a queue depth of 1. However, even with an octane drive installed, it is possible for the cpu/memory/program efficiency to be the slowest link.
Hope this helps, Ben