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

Annotation of OpenXM_contrib/gmp/NEWS, Revision 1.1.1.3

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

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