Offcanvas

개발자 / 머신러닝|딥러닝

오픈AI, 파이썬 기반 언어 ‘트리톤’ 출시··· “GPU 프로그래밍 지원”

2021.07.30 Serdar Yegulalp  |  InfoWorld
오픈AI(OpenAI)가 7월 28일 머신러닝용 GPU 프로그래밍의 복잡성 없이 GPU 기반 딥러닝 프로젝트를 직접 작성할 수 있는 오픈소스 프로그래밍 언어 ‘트리톤(Triton)’의 첫 번째 버전을 출시했다
 
ⓒGetty Images

‘트리톤 1.0’은 파이썬(버전 3.6 이상)을 기반으로 한다. 오픈AI에 따르면 개발자는 트리톤의 라이브러리를 사용해 파이썬으로 코드를 작성한 다음 GPU에서 실행되도록 JIT 컴파일할 수 있다. 또 새로운 도메인 특정 언어를 개발하느라 시간 낭비할 필요 없이 파이썬 언어 자체를 활용할 수 있다. 

트리톤의 라이브러리는 넘파이(NumPy)를 연상시키는 일련의 기본 요소를 제공한다. 이를테면 다양한 행렬 연산이나 특정 기준에 따라 배열을 축소하는 함수 등이다. 사용자는 이러한 기본 요소를 코드에 결합해 GPU에서 실행되도록 컴파일된 @triton.jit 데코레이터를 추가할 수 있다. 이러한 점에서 트리톤은 넘바(Numba)와 유사하다고 개발팀은 전했다. 넘바는 속도를 위해 숫자 집약적인 파이썬 코드를 머신-네이티브 어셈블리로 JIT 컴파일할 수 있는 프로젝트다. 

트리톤의 간단한 예로는 벡터 추가 커널융합된 소프트맥스 연산 등을 들 수 있다. 개발팀은 후자의 경우 전적으로 GPU 메모리에서 수행할 수 있는 작업을 네이티브 파이토치와 융합된 소프트맥스보다 몇 배 더 빠르게 실행할 수 있다고 밝혔다. 

트리톤은 현재 리눅스에서만 사용할 수 있다. 이제 막 출시된 프로젝트이기 때문에 문서화가 아직 완료되지 않았다. 이를 초기에 채택하는 개발자는 소스와 예제를 자세히 검토해야 할 수 있다. 예를 들면 함수의 JIT 컴파일을 최적화하기 위한 매개변수를 정의하는 데 사용할 수 있는 triton.autotune 함수는 라이브러리의 파이썬 API 섹션에 아직 문서화돼 있지 않다. 하지만 triton.autotune 은 트리톤의 행렬 곱셈 예제에서 사용되고 있다. ciokr@idg.co.kr



 
추천 테크라이브러리

회사명:한국IDG 제호: ITWorld 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 편집인 : 박재곤 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.