Re: calling procedures is slow and consumes extra much memory againstcalling function - Mailing list pgsql-hackers

From Pavel Stehule
Subject Re: calling procedures is slow and consumes extra much memory againstcalling function
Date
Msg-id CAFj8pRABiMH9zZuqYh13W5g1FYfpcd5vmQsLkNYLE3ys-84Ssw@mail.gmail.com
Whole thread Raw
In response to Re: calling procedures is slow and consumes extra much memory againstcalling function  (Ranier Vilela <ranier.vf@gmail.com>)
Responses Re: calling procedures is slow and consumes extra much memory againstcalling function
List pgsql-hackers


so 16. 5. 2020 v 0:34 odesílatel Ranier Vilela <ranier.vf@gmail.com> napsal:
Em dom., 10 de mai. de 2020 às 17:21, Pavel Stehule <pavel.stehule@gmail.com> escreveu:
Hi

I try to use procedures in Orafce package, and I did some easy performance tests. I found some hard problems:

1. test case

create or replace procedure p1(inout r int, inout v int) as $$
begin v := random() * r; end
$$ language plpgsql;

This command requires

do $$
declare r int default 100; x int;
begin
  for i in 1..300000 loop
     call p1(r, x);
  end loop;
end;
$$;

about 2.2GB RAM and 10 sec.
I am having a consistent result of 3 secs, with a modified version (exec_stmt_call) of your patch.
But my notebook is (Core 5, 8GB and SSD), could it be a difference in the testing hardware?

My notebook is old T520, and more I have a configured Postgres with --enable-cassert option.

regards

Pavel


regards,
Ranier Vilela

pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: Potentially misleading name of libpq pass phrase hook
Next
From: Thomas Munro
Date:
Subject: Re: pgindent && weirdness