BG writer question?

From: Alan Stange <stange(at)rentec(dot)com>
To: pgsql-performance(at)postgresql(dot)org
Subject: BG writer question?
Date: 2005-08-11 15:25:27
Message-ID: 42FB6DE7.7060107@rentec.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Hello all,

I just was running strace in the writer process and I noticed this pattern:

select(0, NULL, NULL, NULL, {0, 200000}) = 0 (Timeout)
getppid() = 4240
time(NULL) = 1123773324
mmap2(NULL, 528384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0x81000) = 0x69ea3000
semop(1409034, 0xffffc0bc, 1) = 0
<...seeks and writes...>
munmap(0x69ea3000, 528384) = 0
select(0, NULL, NULL, NULL, {0, 200000}) = 0 (Timeout)
getppid() = 4240
time(NULL) = 1123773324
mmap2(NULL, 528384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0x81000) = 0x69ea3000
semop(1605648, 0xffffc0bc, 1) = 0
<...seeks and writes...>
munmap(0x69ea3000, 528384) = 0
select(0, NULL, NULL, NULL, {0, 200000}) = 0 (Timeout)

why mmap and munmap each time? mmap and munmap are fairly expensive
operations (on some systems), especially on multi cpu machines. munmap
in particular generally needs to issue cross calls to the other cpus to
ensure any page mappings are invalidated.

Just curious.

Thanks!

-- Alan

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Dan Harris 2005-08-11 15:33:00 Re: Speedier count(*)
Previous Message Jignesh Shah 2005-08-11 14:30:13 Re: [Fwd: PG8 Tuning]