Patch: Optimize memory allocation in function 'bringetbitmap' - Mailing list pgsql-hackers

From Jinyu Zhang
Subject Patch: Optimize memory allocation in function 'bringetbitmap'
Date
Msg-id 495deb78.4186.1500dacaa63.Coremail.beijing_pg@163.com
Whole thread Raw
Responses Re: Patch: Optimize memory allocation in function 'bringetbitmap'
List pgsql-hackers

BRIN Scan: Optimize memory allocation in function 'bringetbitmap'.
We can allocate memory for some pointer before do long loop instead of allocating
memory in long loop.

Before optimizing code (warm run)
postgres=# select count(*) from lineitem where l_orderkey=1;
 count
-------
     6
(1 row)

Time: 456.219 ms

After optimizing code (warm run)
postgres=# select count(*) from lineitem where l_orderkey=1;
 count
-------
     6
(1 row)

Time: 349.219 ms

The following shows the DDL of this test case.
CREATE TABLE LINEITEM ( L_ORDERKEY    INTEGER NOT NULL,
                             L_PARTKEY     INTEGER NOT NULL,
                             L_SUPPKEY     INTEGER NOT NULL,
                             L_LINENUMBER  INTEGER NOT NULL,
                             L_QUANTITY    DECIMAL(15,2) NOT NULL,
                             L_EXTENDEDPRICE  DECIMAL(15,2) NOT NULL,
                             L_DISCOUNT    DECIMAL(15,2) NOT NULL,
                             L_TAX         DECIMAL(15,2) NOT NULL,
                             L_RETURNFLAG  CHAR(1) NOT NULL,
                             L_LINESTATUS  CHAR(1) NOT NULL,
                             L_SHIPDATE    DATE NOT NULL,
                             L_COMMITDATE  DATE NOT NULL,
                             L_RECEIPTDATE DATE NOT NULL,
                             L_SHIPINSTRUCT CHAR(25) NOT NULL,
                             L_SHIPMODE     CHAR(10) NOT NULL,
                             L_COMMENT      VARCHAR(44) NOT NULL);

copy lineitem from '/home/jinyu/mywork/dbgen/lineitem.tbl' delimiter '|';
create index brinLineitem on lineitem using brin(L_ORDERKEY) with(pages_per_range = 1);

Jinyu Zhang


网易考拉iPhone6s玫瑰金5288元,现货不加价



网易考拉iPhone6s玫瑰金5288元,现货不加价

Attachment

pgsql-hackers by date:

Previous
From: "Jinyu Zhang"
Date:
Subject: BRIN Scan: Optimize memory allocation in function 'bringetbitmap'
Next
From: Filip Rembiałkowski
Date:
Subject: pg_dump LOCK TABLE ONLY question