On 2023/9/5 18:46, John Naylor wrote:
>
> On Tue, Sep 5, 2023 at 4:27 PM Quan Zongliang <quanzongliang@yeah.net
> <mailto:quanzongliang@yeah.net>> wrote:
>
> > Here's how I test it
> > EXPLAIN ANALYZE SELECT * FROM orders;
>
> Note that EXPLAIN ANALYZE has quite a bit of overhead, so it's not good
> for these kinds of tests.
>
> > I'll also try Andres Freund's test method next.
>
> Commit f691f5b80a85 from today removes another source of overhead in
> this function, so I suggest testing against that, if you wish to test again.
>
Test with the latest code of the master branch, see the attached results.
If not optimized(--enable-debug CFLAGS='-O0'), there is a clear
difference. When the compiler does the optimization, the performance is
similar. I think the compiler does a good enough optimization with
"pg_attribute_always_inline" and the last two constant parameters when
calling heapgetpage_collect.
> --
> John Naylor
> EDB: http://www.enterprisedb.com <http://www.enterprisedb.com>