GNU Multiple Precision Arithmetic Library

Wikipedia:Weryfikowalność
Ten artykuł od 2022-02 wymaga zweryfikowania podanych informacji.
Należy podać wiarygodne źródła w formie przypisów bibliograficznych.
Część lub nawet wszystkie informacje w artykule mogą być nieprawdziwe. Jako pozbawione źródeł mogą zostać zakwestionowane i usunięte.
Sprawdź w źródłach: Encyklopedia PWN • Google Books • Google Scholar • Federacja Bibliotek Cyfrowych • BazHum • BazTech • RCIN • Internet Archive (texts / inlibrary)
Po wyeliminowaniu niedoskonałości należy usunąć szablon {{Dopracować}} z tego artykułu.
GNU Multiple-Precision Library
logo
Autor The GNU Project
Pierwsze wydanie 1991
Aktualna wersja stabilna 6.3.0
(30 lipca 2023) [±]
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[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ż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ż

Przypisy

  1. Numerical computation features for Mathematica 5.0 Rob Knapp.

Linki zewnętrzne

Zobacz publikację
Programowanie_w_systemie_UNIX/GMP w Wikibooks
  • Strona projektu