Przejdź do zawartości

GNU Multiple Precision Arithmetic Library

Z Wikipedii, wolnej encyklopedii
To jest stara wersja tej strony, edytowana przez Kocio (dyskusja | edycje) o 14:31, 21 wrz 2009. Może się ona znacząco różnić od aktualnej wersji.

Szablon:Software infobox

GNU Multiple Precision Arithmetic Library (lub GMP) - 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 operacyjnej 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 wiele systemów komputerowej algebry, takich jak Mathematica[1].

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.

Zobacz też

Linki zewnętrzne