[BACK]Return to NEWS CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / gmp

Annotation of OpenXM_contrib/gmp/NEWS, Revision 1.1.1.2

1.1.1.2 ! maekawa     1: Changes between MP version 3.0 and 3.1
        !             2:
        !             3: * Bug fixes.
        !             4: * Improved `make check' running more tests.
        !             5: * Tuned algorithm cutoff points for many machines.  This will improve speed for
        !             6:   a lot of operations, in some cases by a large amount.
        !             7: * Major speed improvments: Alpha 21264.
        !             8: * Some speed improvments: Cray vector computers, AMD K6 and Athlon, Intel P5
        !             9:   and Pentium Pro/II/III.
        !            10: * The mpf_get_prec function now works as it did in GMP 2.
        !            11: * New utilities for auto-tuning and speed measuring.
        !            12: * Multiplication now optionally uses FFT for very large operands.  (To enable
        !            13:   it, pass --enable-fft to configure.)
        !            14: * Support for new systems: Solaris running on x86, FreeBSD 5, HP-UX 11, Cray
        !            15:   vector computers, Rhapsody, Nextstep/Openstep, MacOS.
        !            16: * Support for shared libraries on 32-bit HPPA.
        !            17: * New integer functions: mpz_mul_si, mpz_odd_p, mpz_even_p.
        !            18: * New Kronecker symbol functions: mpz_kronecker_si, mpz_kronecker_ui,
        !            19:   mpz_si_kronecker, mpz_ui_kronecker.
        !            20: * New rational functions: mpq_out_str, mpq_swap.
        !            21: * New float functions: mpf_swap.
        !            22: * New mpn functions: mpn_divexact_by3c, mpn_tdiv_qr.
        !            23: * New EXPERIMENTAL function layer for accurate floating-point arithmetic, mpfr.
        !            24:   To try it, pass --enable-mpfr to configure.  See the mpfr subdirectory for
        !            25:   more information; it is not documented in the main GMP manual.
        !            26:
        !            27: Changes between MP version 3.0 and 3.0.1
        !            28:
        !            29: * Memory leaks in gmp_randinit and mpz_probab_prime_p fixed.
        !            30: * Documentation for gmp_randinit fixed.  Misc documentation errors fixed.
        !            31:
        !            32: Changes between MP version 2.0 and 3.0
        !            33:
        !            34: * Source level compatibility with past releases (except mpn_gcd).
        !            35: * Bug fixes.
        !            36: * Much improved speed thanks to both host independent and host dependent
        !            37:   optimizations.
        !            38: * Switch to autoconf/automake/libtool.
        !            39: * Support for building libgmp as a shared library.
        !            40: * Multiplication and squaring using 3-way Toom-Cook.
        !            41: * Division using the Burnikel-Ziegler method.
        !            42: * New functions computing binomial coefficients: mpz_bin_ui, mpz_bin_uiui.
        !            43: * New function computing Fibonacci numbers: mpz_fib_ui.
        !            44: * New random number generators: mpf_urandomb, mpz_rrandomb, mpz_urandomb,
        !            45:   mpz_urandomm, gmp_randclear, gmp_randinit, gmp_randinit_lc_2exp, gmp_randseed,
        !            46:   gmp_randseed_ui.
        !            47: * New function for quickly extracting limbs: mpz_getlimbn.
        !            48: * New functions performing integer size tests: mpz_fits_sint_p,
        !            49:   mpz_fits_slong_p, mpz_fits_sshort_p, mpz_fits_uint_p, mpz_fits_ulong_p,
        !            50:   mpz_fits_ushort_p.
        !            51: * New mpf functions: mpf_ceil, mpf_floor, mpf_pow_ui, mpf_trunc.
        !            52: * New mpq function: mpq_set_d.
        !            53: * New mpz functions: mpz_addmul_ui, mpz_cmpabs, mpz_cmpabs_ui, mpz_lcm,
        !            54:   mpz_nextprime, mpz_perfect_power_p, mpz_remove, mpz_root, mpz_swap,
        !            55:   mpz_tdiv_ui, mpz_tstbit, mpz_xor.
        !            56: * New mpn function: mpn_divexact_by3.
        !            57: * New CPU support: DEC Alpha 21264, AMD K6 and Athlon, HPPA 2.0 and 64,
        !            58:   Intel Pentium Pro and Pentium-II/III, Sparc 64, PowerPC 64.
        !            59: * Almost 10 times faster mpz_invert and mpn_gcdext.
        !            60: * The interface of mpn_gcd has changed.
        !            61: * Better support for MIPS R4x000 and R5000 under Irix 6.
        !            62: * Improved support for SPARCv8 and SPARCv9 processors.
        !            63:
        !            64: Changes between MP version 2.0 and 2.0.2
        !            65:
        !            66: * Many bug fixes.
        !            67:
        !            68: Changes between MP version 1.3.2 and 2.0
1.1       maekawa    69:
                     70: * Division routines in the mpz class have changed.  There are three classes of
                     71:   functions, that rounds the quotient to -infinity, 0, and +infinity,
                     72:   respectively.  The first class of functions have names that begin with
                     73:   mpz_fdiv (f is short for floor), the second class' names begin with mpz_tdiv
                     74:   (t is short for trunc), and the third class' names begin with mpz_cdiv (c is
                     75:   short for ceil).
                     76:
                     77:   The old division routines beginning with mpz_m are similar to the new
                     78:   mpz_fdiv, with the exception that some of the new functions return useful
                     79:   values.
                     80:
                     81:   The old function names can still be used.  All the old functions names will
                     82:   now do floor division, not trunc division as some of them used to.  This was
                     83:   changed to make the functions more compatible with common mathematical
                     84:   practice.
                     85:
                     86:   The mpz_mod and mpz_mod_ui functions now compute the mathematical mod
                     87:   function.  I.e., the sign of the 2nd argument is ignored.
                     88:
                     89: * The mpq assignment functions do not canonicalize their results.  A new
                     90:   function, mpq_canonicalize must be called by the user if the result is not
                     91:   known to be canonical.
                     92: * The mpn functions are now documented.  These functions are intended for
                     93:   very time critical applications, or applications that need full control over
                     94:   memory allocation.  Note that the mpn interface is irregular and hard to
                     95:   use.
                     96: * New functions for arbitrary precision floating point arithmetic.  Names
                     97:   begin with `mpf_'.  Associated type mpf_t.
                     98: * New and improved mpz functions, including much faster GCD, fast exact
                     99:   division (mpz_divexact), bit scan (mpz_scan0 and mpz_scan1), and number
                    100:   theoretical functions like Jacobi (mpz_jacobi) and multiplicative inverse
                    101:   (mpz_invert).
                    102: * New variable types (mpz_t and mpq_t) are available that makes syntax of
                    103:   mpz and mpq calls nicer (no need for & before variables).  The MP_INT and
                    104:   MP_RAT types are still available for compatibility.
                    105: * Uses GNU configure.  This makes it possible to choose target architecture
                    106:   and CPU variant, and to compile into a separate object directory.
                    107: * Carefully optimized assembly for important inner loops.  Support for DEC
1.1.1.2 ! maekawa   108:   Alpha, Amd 29000, HPPA 1.0 and 1.1, Intel Pentium and generic x86, Intel
1.1       maekawa   109:   i960, Motorola MC68000, MC68020, MC88100, and MC88110, Motorola/IBM
                    110:   PowerPC, National NS32000, IBM POWER, MIPS R3000, R4000, SPARCv7,
                    111:   SuperSPARC, generic SPARCv8, and DEC VAX.  Some support also for ARM,
                    112:   Clipper, IBM ROMP (RT), and Pyramid AP/XP.
                    113: * Faster.  Thanks to the assembler code, new algorithms, and general tuning.
                    114:   In particular, the speed on machines without GCC is improved.
                    115: * Support for machines without alloca.
                    116: * Now under the LGPL.
                    117:
                    118: INCOMPATIBILITIES BETWEEN GMP 1 AND GMP 2
                    119:
                    120: * mpq assignment functions do not canonicalize their results.
                    121: * mpz division functions round differently.
                    122: * mpz mod functions now really compute mod.
                    123: * mpz_powm and mpz_powm_ui now really use mod for reduction.
1.1.1.2 ! maekawa   124:
        !           125:
        !           126:
        !           127: ----------------
        !           128: Local variables:
        !           129: mode: text
        !           130: fill-column: 76
        !           131: End:

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>