Re: Floating Point, 64 bit, 80 bit and beyond
I've done a lot of fractal programming in Visual Basic, and have built an engine which runs Fractint-compatible formulae in Windows. The speed of modern PC's makes the slightly slower calculation times less inconvenient, and I don't have to worry about video drivers. Using VB's "Double" data type gave me the standard 64-bit FP calculation mode. When I learned that most FPU's today can do 80-bit mode, I was disappointed that VB doesn't support this type. I converted my engine to PowerBasic, a VB-like 3rd-party compiler that offers a data type called "Ext", which is the 80-bit extended FP. PowerBasic also lets you create DLL's which you can't do in VB, so I was able to easily replace the VB engine with the PB version, retaining my VB front-end. Of course, 80-bit is only a marginal improvement over 64-bit, with just a few extra digits of accuracy. Of the extra 16 bits, it seems that only 10 are given to the mantissa, the other 6 being given to extending the exponent (as far as I can tell). I've been looking at arbitrary-precision options over the last few months. I'm very interested in the public domain library GMP (Gnu Multiple Precision) which can be built in optimised form for specific CPU's, e.g. Pentium2, Pentium4, i386 etc ... The "primitives" (fundamental operations like add, multiply) can be performed very fast, much faster than generic/portable libraries. Deploying GMP to use with fractals under Windows has proved to be tricky, as GMP is mostly used in Unix environments, but I've managed to overcome these problems and now have a GMP DLL I can use. Soon I hope to be able to do some comparative time tests to see how GMP performs "in the field" - ie. with a deep-zoom fractal calculation. Regards Jim White ________________________________________________________________________ Want to chat instantly with your online friends? Get the FREE Yahoo! Messenger http://mail.messenger.yahoo.co.uk
participants (1)
-
Jim White