지난해 10월 Google Cloud Next 2022 행사에서 OpenXLA 프로젝트가 공식적으로 등장했습니다. Google은 Alibaba, AMD, Arm, Amazon, Intel, Nvidia 및 기타 기술 기업을 포함한 기술 기업이 추진하는 오픈소스 AI 프레임워크와 협력했습니다. 기계 학습 프레임워크를 통해 기계 학습 개발자는 프레임워크와 하드웨어를 사전에 선택할 수 있습니다.
수요일, Google은 OpenXLA 프로젝트가 공식적으로 오픈 소스라고 발표했습니다.
프로젝트 링크: https://github.com/openxla/xla
다양한 기계 학습 프레임워크 및 하드웨어 플랫폼과 작동하는 통합 기계 학습 컴파일러를 생성함으로써 OpenXLA는 기계 학습 애플리케이션을 제공하고 더 큰 코드 이식성을 제공합니다. 이는 AI 연구 및 응용을 위한 중요한 프로젝트이며 Jeff Dean도 이를 소셜 네트워크에서 홍보했습니다.
오늘날 기계 학습 개발 및 배포는 프레임워크, 하드웨어 및 사용 사례에 따라 달라질 수 있는 단편화된 인프라의 영향을 받습니다. 이러한 격리는 개발자의 작업 속도를 제한하고 모델 이식성, 효율성 및 생산에 장벽을 만듭니다.
3월 8일, Google과 다른 업체들은 XLA, StableHLO 및 IREE 리포지토리가 포함된 OpenXLA 프로젝트를 개시하면서 이러한 장벽을 제거하기 위한 중요한 조치를 취했습니다.
OpenXLA는 AI/머신러닝 업계 리더들이 공동으로 개발한 오픈 소스 ML 컴파일러 생태계입니다. 기여자에는 Alibaba, AWS, AMD, Apple, Arm, Cerebras, Google, Graphcore, Hugging Face, Intel, Meta 및 NVIDIA가 있습니다. 이를 통해 개발자는 다양한 하드웨어에서 효율적인 교육과 서비스를 제공하기 위해 모든 주요 기계 학습 프레임워크의 모델을 컴파일하고 최적화할 수 있습니다. OpenXLA를 사용하는 개발자는 교육 시간, 처리량, 서비스 대기 시간, 궁극적으로 릴리스 및 컴퓨팅 비용이 크게 향상되는 것을 확인할 수 있습니다.
AI 기술이 실용화 단계에 진입함에 따라 많은 산업 분야의 개발 팀은 머신러닝을 사용하여 질병 예측 및 예방, 개인화된 학습 경험 및 탐색과 같은 현실 세계의 과제를 해결하고 있습니다. 블랙홀 물리학.
모델 매개변수 수가 기하급수적으로 증가하고 딥 러닝 모델에 필요한 계산량이 6개월마다 두 배로 증가함에 따라 개발자는 인프라의 최대 성능과 활용도를 추구하고 있습니다. 많은 팀이 데이터 센터의 에너지 효율적인 머신 러닝 전용 ASIC부터 더 빠른 응답 시간을 제공하는 AI 에지 프로세서에 이르기까지 다양한 하드웨어 모델을 활용하고 있습니다. 따라서 이러한 하드웨어 장치는 효율성을 높이기 위해 맞춤화되고 고유한 알고리즘과 소프트웨어 라이브러리를 사용합니다.
그러나 다른 하드웨어 장치를 현재 사용 중인 여러 프레임워크(예: TensorFlow, PyTorch)에 연결하는 공통 컴파일러가 없으면 기계 학습을 효율적으로 실행하기 위해 많은 노력을 기울여야 합니다. 실제로 개발자는 각 하드웨어 대상에 대한 모델 작업을 수동으로 최적화해야 합니다. 즉, 맞춤형 소프트웨어 라이브러리를 사용하거나 장치별 코드를 작성하려면 도메인 전문 지식이 필요합니다.
특수 기술을 사용하여 효율성을 높이면 프레임워크와 하드웨어 전반에 걸쳐 사일로화되고 일반화할 수 없는 경로가 발생하여 유지 관리 비용이 높아지고 결과적으로 공급업체에 종속되고 시스템 진행 속도가 느려지는 것은 역설입니다. 학습 발달 .
OpenXLA 프로젝트는 ML 인프라의 복잡성 전반에 걸쳐 확장되는 최첨단 ML 컴파일러를 제공합니다. 핵심 요소는 성능, 확장성, 이식성, 유연성 및 사용 편의성입니다. OpenXLA를 통해 우리는 AI의 개발 및 제공을 가속화하여 현실 세계에서 AI의 더 큰 잠재력을 실현하고자 합니다.
OpenXLA의 목표:
현재 기계 학습 인프라에서 우리가 직면한 과제는 엄청나며 어떤 조직도 혼자 효과적으로 문제를 해결할 수 없습니다. OpenXLA 커뮤니티는 프레임워크에서 컴파일러, 런타임, 칩에 이르기까지 AI 스택의 다양한 수준에서 작업하는 개발자와 업계 리더를 하나로 모으므로 ML 공간에서 볼 수 있는 단편화를 해결하는 데 이상적으로 적합합니다.
오픈 소스 프로젝트인 OpenXLA는 다음 원칙을 준수합니다.
OpenXLA는 공통 컴파일러 인터페이스를 통해 모든 주요 프레임워크에서 지원되는 모듈식 도구 체인을 통해 기계 학습 개발자의 장벽을 제거하고 이식성을 활용합니다. 모델 표현을 표준화하고 도메인별 컴파일러를 제공합니다. 강력한 대상 지향 및 하드웨어별 최적화를 통해 툴체인에는 XLA, StableHLO 및 IREE가 포함되어 있으며 모두 MLIR을 활용합니다. 이는 기계 학습 모델이 하드웨어에서 일관되게 표현, 최적화 및 실행될 수 있도록 하는 컴파일러 인프라입니다.
기계 학습 사용 사례 범위
OpenXLA의 현재 사용은 DeepMind의 AlphaFold, GPT2 및 Alibaba Cloud Wait의 Swin Transformer를 포함한 다양한 ML 사용 사례를 포괄합니다. 모델이 완전히 훈련되고 Amazon.com에서 다중 모드 LLM 훈련을 수행합니다. Waymo와 같은 고객은 차량 내 실시간 추론을 위해 OpenXLA를 활용합니다. 또한 OpenXLA는 AMD RDNA™ 3가 장착된 로컬 시스템에서 Stable Diffusion 서비스를 최적화하는 데 사용됩니다.
최고의 성능, 즉시 사용 가능
OpenXLA를 사용하면 개발자가 장치별 코드를 작성하지 않고도 모델 성능을 쉽게 가속화할 수 있습니다. 대수식 단순화, 메모리 내 데이터 레이아웃 최적화, 최대 메모리 사용량 및 통신 오버헤드를 줄이기 위한 스케줄링 개선 등 전반적인 모델 최적화 기능을 갖추고 있습니다. 고급 운영자 융합 및 커널 생성은 장치 활용도를 향상시키고 메모리 대역폭 요구 사항을 줄이는 데 도움이 됩니다.
워크로드를 쉽게 확장하세요
효율적인 병렬화 알고리즘을 개발하려면 시간이 많이 걸리고 전문 지식이 필요합니다. GSPMD와 같은 기능을 사용하면 개발자는 키 텐서의 하위 집합에만 주석을 달기만 하면 됩니다. 그러면 컴파일러에서 이를 사용하여 병렬 계산을 자동으로 생성할 수 있습니다. 이를 통해 여러 하드웨어 호스트 및 가속기에 걸쳐 모델을 분할하고 효율적으로 병렬화하는 데 필요한 상당한 노력이 필요하지 않습니다.
이식성 및 선택성
OpenXLA는 AMD 및 NVIDIA GPU, x86 CPU 및 Arm 아키텍처, Google TPU와 같은 ML 가속기를 포함한 다양한 하드웨어 장치에 대한 기본 지원을 제공합니다. AWS Trainium 및 Inferentia, Graphcore IPU, Cerebras 웨이퍼 스케일 엔진 등. OpenXLA는 또한 OpenXLA의 입력 형식으로 사용되는 휴대용 계층인 StableHLO를 통해 TensorFlow, PyTorch 및 JAX를 지원합니다.
유연성
OpenXLA는 사용자에게 모델 핫스팟을 수동으로 조정할 수 있는 유연성을 제공합니다. 사용자 정의 호출과 같은 확장 메커니즘을 통해 사용자는 CUDA, HIP, SYCL, Triton 및 기타 커널 언어로 딥 러닝 기본 요소를 작성하여 하드웨어 기능을 최대한 활용할 수 있습니다.
StableHLO
StableHLO는 ML 프레임워크와 ML 컴파일러 사이의 이식 가능한 계층으로, 역학, 양자화 및 희소성을 위한 상위 수준 연산(HLO)을 지원하는 연산 집합입니다. 또한 MLIR 바이트코드로 직렬화하여 호환성을 보장할 수 있습니다. 모든 주요 ML 프레임워크(JAX, PyTorch, TensorFlow)는 StableHLO를 생성할 수 있습니다. 2023년에 Google은 PyTorch 팀과 긴밀히 협력하여 PyTorch 버전 2.0과의 통합을 달성할 계획입니다.
위 내용은 통합 AI 개발: Google OpenXLA는 오픈 소스이며 모든 프레임워크와 AI 칩을 통합합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!