Przejdź do zawartości

GNU Multiple Precision Arithmetic Library

Z Wikipedii, wolnej encyklopedii
To jest stara wersja tej strony, edytowana przez AntiGuru (dyskusja | edycje) o 09:40, 11 sie 2008. Może się ona znacząco różnić od aktualnej wersji.

Szablon:Software infobox

GNU Multiple Precision Arithmetic Library (lub GMP) - to biblioteka programistyczna udostępniająca liczby całkowite ze znakiem, wymierne i zmiennoprzecinkowe o dowolnej precyzji. Nie ma limitu na precyzję z wyjątkiem dostępnej ilości wolnej pamięci RAM na komputerze z tą biblioteką. GMP ma bogaty zestaw funkcji o schematycznych nazwach (by łatwiej je zapamiętać). Podstawowym interfejsem dla biblioteki jest język C, ale są dostępne interfejsy także w innych językach, np. C++, OCaml, Perl i Python.

Głównym zastosowaniem dla GMP są aplikacje kryptograficzne, naukowe, pakiety bezpieczeństwa internetowego i systemy algebry komputerowej.

GMP ma ambicje być najszybszą biblioteką tego typu dla wszystkich wielkości operandów. Czynnikami umożliwiającymi to zamierzenie są:

  • Używanie pełnych słów jako podstawowy typ arytmetyczny,
  • Używanie różnych algorytmów dla różnych wielkości operandów (najszybsze algorytmy dla naprawdę dużych liczb rzadko są najszybsze dla małych liczb),
  • Wysoce zoptymalizowany kod asemblerowy dla najbardziej krytycznych zagnieżdzonych pętli, który jest specjalnie napisany pod konkretny CPU.

GMP został wydany pierwszy raz w roku 1991. Jest ciągle rozwijany i utrzymywany w tempie około jednego wydania na rok. Obecna wersja to 4.2.3.

GMP jest częścią projektu GNU, aczkolwiek nie jest utrzymywany pod adresem gnu.org. Jest wydawany na licencji LGPL.

GMP jest używany w obliczeniach na liczbach całkowitych w wielu systemach komputerowej algebry, takich jak Mathematica[1].

Zobacz też

Linki zewnętrzne