In "Allocates WAL buffers on shared buffers", "shared buffers" should be DRAM because shared buffers in Postgres means the buffer cache for database data.
That's true. Fixed.
I haven't tracked the whole thread, but could you collect information like the following? I think such (partly basic) information will be helpful to decide whether it's worth casting more efforts into complex code, or it's enough to place WAL on DAX-aware filesystems and tune the filesystem.
* What approaches other DBMSs take, and their performance gains (Oracle, SQL Server, HANA, Cassandra, etc.) The same DBMS should take different approaches depending on the file type: Oracle recommends different things to data files and REDO logs.
I also think it will be helpful. Adding "Other DBMSes using PMEM" section.
* The storage capabilities of PMEM compared to the fast(est) alternatives such as NVMe SSD (read/write IOPS, latency, throughput, concurrency, which may be posted on websites like Tom's Hardware or SNIA)
This will be helpful, too. Adding "Basic performance" subsection under "Overview of persistent memory (PMEM)."
* What's the situnation like on Windows?
Sorry but I don't know Windows' PMEM support very much. All I know is that Windows Server 2016 and 2019 supports PMEM (2016 partially) [1] and PMDK supports Windows [2].
All the above contents will be updated gradually. Please stay tuned.