From: | Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> |
---|---|
To: | James Cloos <cloos(at)jhcloos(dot)com> |
Cc: | PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>, Shaun Thomas <sthomas(at)optionshouse(dot)com>, Mark Kirkwood <mark(dot)kirkwood(at)catalyst(dot)net(dot)nz>, testman1316 <danilo(dot)ramirez(at)hmhco(dot)com> |
Subject: | Re: PostrgeSQL vs oracle doing 1 million sqrts am I doing it wrong? |
Date: | 2014-08-06 20:18:37 |
Message-ID: | CAFj8pRCbe+35gNygp3Gwvem21GRsJM9psxmaD2c0zZfD7MGSEA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
2014-08-06 22:07 GMT+02:00 James Cloos <cloos(at)jhcloos(dot)com>:
> >>>>> "ST" == Shaun Thomas <sthomas(at)optionshouse(dot)com> writes:
>
> ST> That said, the documentation here says FLOAT4 is an alias for REAL,
> ST> so it's somewhat nonintuitive for FLOAT4 to be so much slower than
> ST> FLOAT8, which is an alias for DOUBLE PRECISION.
>
> There are some versions of glibc where doing certain math on double is
> faster than doing it on float, depending on how things are compiled.
>
> Maybe this is one of them?
>
no
It is plpgsql issue only. PL/pgSQL uses a generic cast via serialization to
string and new parsing
It doesn't use a effective libc casting functions.
see
https://github.com/postgres/postgres/blob/master/src/pl/plpgsql/src/pl_exec.c
function
exec_cast_value
>
> -JimC
> --
> James Cloos <cloos(at)jhcloos(dot)com> OpenPGP: 0x997A9F17ED7DAEA6
>
>
> --
> Sent via pgsql-hackers mailing list (pgsql-hackers(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-hackers
>
From | Date | Subject | |
---|---|---|---|
Next Message | Heikki Linnakangas | 2014-08-06 20:30:38 | Re: Index-only scans for GIST |
Previous Message | Robert Haas | 2014-08-06 20:14:23 | Re: missing PG_RETURN_UINT16 |