GNU Multiple Precision Arithmetic Library
Ten artykuł od 2022-02 wymaga zweryfikowania podanych informacji. |
Autor | The GNU Project |
---|---|
Pierwsze wydanie | 1991 |
Aktualna wersja stabilna | 6.1.0[1] / 1 listopada 2015; ponad 6 lat temu |
Platforma sprzętowa | Wieloplatformowość |
Rodzaj | Biblioteka matematyczna |
Licencja | LGPL |
Strona internetowa |
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[2].
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żdżonych 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.
GMP jest częścią projektu GNU, aczkolwiek nie jest utrzymywany pod adresem gnu.org. Jest wydawany na licencji LGPL.
Zobacz też
Linki zewnętrzne
Przypisy
- ↑ Changes in GMP 6.1.0. [dostęp 2015-11-04].
- ↑ Numerical computation features for Mathematica 5.0 Rob Knapp