Re: IEEE 754-2008 decimal numbers
От | Craig Ringer |
---|---|
Тема | Re: IEEE 754-2008 decimal numbers |
Дата | |
Msg-id | 4CB26B16.7080602@postnewspapers.com.au обсуждение исходный текст |
Ответ на | IEEE 754-2008 decimal numbers (Thomas Munro <munro@ip9.org>) |
Ответы |
Re: IEEE 754-2008 decimal numbers
|
Список | pgsql-general |
On 10/11/2010 04:46 AM, Thomas Munro wrote: > Has anyone done any work on IEEE 754-2008 decimal types for PostgreSQL? I haven't seen any discussion. Perhaps you should ask on pgsql-hackers@ as well, as some folks who might've tried it read that list but not this one. > I couldn't find anything, so I was thinking it might be a fun exercise > for learning about extending PostgreSQL with user defined types. My > first goal is to be able to store decimal numbers with a smaller disk > footprint than NUMERIC. NUMERIC just got a smaller header in 9.1, but AFAIK is still binary coded decimal (BCD). A smaller and possibly faster fixed-precision numeric would certainly be awfully nice. Not everybody needs perfect precision, only tightly controlled precision with sane and controllable rounding rules. What I'd give for rounding rule control with numeric types.... > (A more ambitious project for later would be defining > arithmetic operators etc using compiler/hardware support). Hmm, yes. I didn't realize c99 added these. gcc's documentation says that this support is "only activated on certain targets" - meaning possibly limited platform/cpu support? http://gcc.gnu.org/onlinedocs/gccint/Decimal-float-library-routines.html It seems to have been added in gcc 4.3. It has hardware decimal floating point support on zseries There's also Intel's Decimal Floating-Point Math Library , which seems to be BSD licensed, and is apparently what the gcc decimal floating point support is based on. http://software.intel.com/en-us/articles/intel-decimal-floating-point-math-library/ http://software.intel.com/en-us/blogs/2008/03/06/intel-decimal-floating-point-math-library/ -- Craig Ringer
В списке pgsql-general по дате отправления: