> Hi all, > By mapping the WAL files by each backend in to its address > space using "mmap" system call , there will be big > improvements in performance from the following point of view: > 1. Each backend directly writes in to the address > space which is obtained by maping the WAL files. > this saves the write system call at the end of > every transaction which transfres 8k of > data from user space to kernel. > 2. since every transaction does not modify all the 8k > content of WAL page , so by issuing the > fsync , the kernel only transfers only the > kernel pages which are modified , which is 4k for > linux so fsync time is saved by twice. > Any comments ?.
This is interesting. We are concerned about using mmap() for all I/O because we could eat up quite a bit of address space for big tables, but WAL seems like an ideal use for mmap(). -- Bruce Momjian | http://candle.pha.pa.us [EMAIL PROTECTED] | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026 ---------------------------(end of broadcast)--------------------------- TIP 6: Have you searched our list archives? http://archives.postgresql.org