Mark Kirkwood <mark.kirkwood@xxxxxxxxxxxxxxx> wrote: > On 12/07/14 01:19, Kevin Grittner wrote: >> >> It might be worth a test using a cpuset to interleave OS cache and >> the NUMA patch I submitted to the current CF to see whether this is >> getting into territory where the patch makes a bigger difference. >> I would expect it to do much better than using numactl --interleave >> because work_mem and other process-local memory would be allocated >> in "near" memory for each process. >> > http://www.postgresql.org/message-id/1402267501.41111.YahooMailNeo@xxxxxxxxxxxxxxxxxxxxxxxxxxxx > > Thanks Kevin - I did try this out - seemed slightly better than using > --interleave, but almost identical to the results posted previously. > > However looking at my postgres binary with ldd, I'm not seeing any link > to libnuma (despite it demanding the library whilst building), so I > wonder if my package build has somehow vanilla-ified the result :-( That is odd; not sure what to make of that! > Also I am guessing that with 60 cores I do: > > $ sudo /bin/bash -c "echo 0-59 >/dev/cpuset/postgres/cpus" > > i.e cpus are cores not packages...? Right; basically, as a guide, you can use the output from: $ numactl --hardware Use the union of all the "cpu" numbers from the "node n cpus" lines. The above statement is also a good way to see how unbalance memory usage has become while running a test. -- Kevin Grittner EDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company