From: | Matt Kelly <mkellycs(at)gmail(dot)com> |
---|---|
To: | Jim Nasby <Jim(dot)Nasby(at)bluetreble(dot)com> |
Cc: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com>, Josh Berkus <josh(at)agliodbs(dot)com>, PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: logical column ordering |
Date: | 2015-02-28 06:01:55 |
Message-ID: | CA+KcUkjunQz_U8ggCaAkC3n49cJ+-0pPWPUKvN5iNwOF5WfUGw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
>
> Even if it does fit in memory I suspect memory bandwidth is more important
> than clock cycles.
http://people.freebsd.org/~lstewart/articles/cpumemory.pdf
This paper is old but the ratios should still be pretty accurate. Main
memory is 240 clock cycles away and L1d is only 3. If the experiments in
this paper still hold true loading the 8K block into L1d is far more
expensive than the CPU processing done once the block is in cache.
When one adds in NUMA to the contention on this shared resource, its not
that hard for a 40 core machine to starve for memory bandwidth, and for
cores to sit idle waiting for main memory. Eliminating wasted space seems
far more important even when everything could fit in memory already.
From | Date | Subject | |
---|---|---|---|
Next Message | Gavin Flower | 2015-02-28 06:05:29 | Re: logical column ordering |
Previous Message | Stephen Frost | 2015-02-28 05:45:46 | Re: Strange assertion using VACOPT_FREEZE in vacuum.c |