2018-06-23 8:35 GMT+02:00 Pavel Stehule <pavel.steh...@gmail.com>:

> Hi
>
> I try to measure effect of JIT tuple deform and I don't see any possible
> effect.
>
> Is it this feature active in master branch?
>
> Is possible to see this feature in EXPLAIN ANALYZE?
>

Unfortunately I got slowdown

0. shared buffers = 1GB
1. create table with 50 int columns
2. insert into this table 4M rows

postgres=# \dt+ wt
                   List of relations
+--------+------+-------+-------+--------+-------------+
| Schema | Name | Type  | Owner |  Size  | Description |
+--------+------+-------+-------+--------+-------------+
| public | wt   | table | pavel | 893 MB |             |
+--------+------+-------+-------+--------+-------------+
(1 row)

default setting

postgres=# explain analyze select sum(c45) from wt;
+------------------------------------------------------------------------------------------------------------------------------------------+
|                                                                QUERY
PLAN                                                                |
+------------------------------------------------------------------------------------------------------------------------------------------+
| Finalize Aggregate  (cost=136120.69..136120.70 rows=1 width=8) (actual
time=879.547..879.547 rows=1 loops=1)                             |
|   ->  Gather  (cost=136120.47..136120.68 rows=2 width=8) (actual
time=879.514..879.538 rows=3 loops=1)                                   |
|         Workers Planned:
2
|
|         Workers Launched:
2
|
|         ->  Partial Aggregate  (cost=135120.47..135120.48 rows=1 width=8)
(actual time=850.283..850.284 rows=1 loops=3)                  |
|               ->  Parallel Seq Scan on wt  (cost=0.00..130953.77
rows=1666678 width=4) (actual time=0.071..223.338 rows=1333347 loops=3) |
| Planning Time: 0.158
ms
|
|
JIT:
|
|   Functions:
6
|
|   Generation Time: 4.267
ms
|
|   Inlining:
false
|
|   Inlining Time: 0.000
ms
|
|   Optimization:
false
|
|   Optimization Time: 2.472
ms
|
|   Emission Time: 15.929
ms
|
| Execution Time: 899.496
ms
|
+------------------------------------------------------------------------------------------------------------------------------------------+
(16 rows)

postgres=# set jit_tuple_deforming to off;
SET
postgres=# explain analyze select sum(c45) from wt;
+------------------------------------------------------------------------------------------------------------------------------------------+
|                                                                QUERY
PLAN                                                                |
+------------------------------------------------------------------------------------------------------------------------------------------+
| Finalize Aggregate  (cost=136120.69..136120.70 rows=1 width=8) (actual
time=743.667..743.667 rows=1 loops=1)                             |
|   ->  Gather  (cost=136120.47..136120.68 rows=2 width=8) (actual
time=743.654..743.657 rows=3 loops=1)                                   |
|         Workers Planned:
2
|
|         Workers Launched:
2
|
|         ->  Partial Aggregate  (cost=135120.47..135120.48 rows=1 width=8)
(actual time=715.532..715.533 rows=1 loops=3)                  |
|               ->  Parallel Seq Scan on wt  (cost=0.00..130953.77
rows=1666678 width=4) (actual time=0.067..216.245 rows=1333347 loops=3) |
| Planning Time: 0.157
ms
|
|
JIT:
|
|   Functions:
4
|
|   Generation Time: 1.989
ms
|
|   Inlining:
false
|
|   Inlining Time: 0.000
ms
|
|   Optimization:
false
|
|   Optimization Time: 0.449
ms
|
|   Emission Time: 7.254
ms
|
| Execution Time: 761.549
ms
|
+------------------------------------------------------------------------------------------------------------------------------------------+
(16 rows)

When jit_tuple_deforming is enabled, the query is slower about 100ms, looks
like performance regression





> Regards
>
> Pavel
>

Reply via email to