GMP (라이브러리)

위키백과, 우리 모두의 백과사전.
이동: 둘러보기, 검색
GNU Multiple-Precision Library
개발자 GNU
최근 버전 5.1.3 / 2013년 9월 30일, 445일 경과
운영 체제 크로스플랫폼
언어 C (프로그래밍 언어)
라이선스 LGPL
웹사이트 gmplib.org

GMP(GNU Multiple-Precision Library)는 임의의 크기를 가진 수치를 계산하기 위한 자유 소프트웨어 라이브러리이다. GMP가 설치된 컴퓨터의 저장 장치가 가용한 한 이론상 무한한 정도의 계산이 가능하다. GMP 라이브러리는 풍부한 함수와 정규 인터페이스를 제공하고 있다. 기본 인터페이스는 C 프로그래밍 언어를 위하여 제공하며, 기타 다른 언어에 대해서는 래퍼(wrapper)를 통한 인터페이스를 제공한다. 인터페이스를 지원하는 언어로는 C++, OCaml, Perl, 그리고 파이썬 등이 있다. GMP는 암호화 애플리케이션, 인터넷 보안 애플리케이션 및 대수학 등에 사용하는 것이 주요 목적이다.

GMP는 그 어떤 큰 수 라이브러리보다 더 빠르게 만드려는 목표를 가지고 있다. 이 목표를 달성하기 위하여 다음과 같은 중요한 성공 요소를 고려하고 있다.

  • 기본 수자 형 데이터는 풀 워드를 사용
  • 서로 다른 피 연산자의 크기에 따른 다른 알고리즘 채택 – 큰 수 처리 알고리즘이 작은 수 계산에 동시에 빠른 성능을 내는 경우가 거의 없기 때문이다.
  • 서로 다른 CPU에 따른 고도의 최적화 구현

최초의 GMP는 1991년에 발표되었다. 지속적인 개발과 유지보수 활동을 통해서, 거의 매년 새로운 버전을 발표하고 있다. 현재 발표된 최신 버전은 5.0.3이다.

GMP는 GNU 프로젝트의 일환으로 유지되고 있으며, GNU LPGL 라이선스 정책에 따라 배포되고 있다.

매스매티카[1]와 같은 대표적인 컴퓨터 대수 시스템 소프트웨어의 정수 계산을 위한 부분에 사용되고 있기도 하다.

같이 보기[편집]

주석[편집]

바깥 고리[편집]