AWS Neuron이란 무엇인가요?
AWS Neuron은 AWS Trainium과 AWS Inferentia에서 딥 러닝 및 생성형 AI 워크로드를 실행하기 위한 개발자 스택입니다. 오픈 소스 기반으로 빌드된 Neuron을 사용하면 개발자가 코드를 수정하지 않고도 PyTorch 및 JAX 프레임워크와 HuggingFace, VLLM, PyTorch Lightning 등의 ML 라이브러리를 사용하여 기본적으로 빌드, 배포 및 탐색할 수 있습니다. 여기에는 컴파일러, 런타임, 훈련 및 추론 라이브러리, 모니터링, 프로파일링 및 디버깅을 위한 개발자 도구가 포함됩니다. Neuron은 딥 러닝 및 AI 모델 구축 및 배포부터 최고 성능 및 최저 비용을 달성하기 위한 최적화, 모델 동작에 대한 심층적인 인사이트 확보 등 포괄적인 기계 학습(ML) 개발 수명 주기를 지원합니다.
Neuron은 신속한 실험, 프론티어 모델의 프로덕션 규모 훈련, 사용자 지정 커널에서 Neuron Kernel Interface(NKI)를 통한 낮은 수준의 성능 최적화, 에이전틱 AI 및 강화 학습 워크로드를 위한 비용 최적화된 추론 배포, Neuron Explorer를 통한 포괄적인 프로파일링 및 디버깅을 지원합니다.
연구원을 위한 설계
Neuron은 Trainium에서 네이티브 PyTorch 코드를 변경하지 않고 실행하여 신속한 AI 연구를 지원합니다. 연구원은 PyTorch Eager 모드 지원을 통해 새로운 아이디어를 시도하고 빠르게 반복할 수 있습니다. FSDP, DDP 및 DTensor와 같은 PyTorch 분산 라이브러리를 사용하면 칩 전체에서 모델을 샤딩하거나 여러 노드로 조정할 수 있으므로 쉽게 규모를 조정할 수 있습니다. Neuron은 torch.compile을 지원하며, 이제 수정하지 않고도 Trainium에서 TorchTitan 및 HuggingFace Transformer와 같은 라이브러리가 직접 작동합니다. 또한 JAX 개발자는 Neuron을 활용하여 모델을 쉽게 개발 및 최적화하고 Inferentia 및 Trainium에 배포할 수 있습니다.
생산성을 위한 설계
Neuron은 에이전틱 AI 및 강화 학습 워크로드의 추론 경제학을 최적화합니다. 표준 vLLM V1 API는 Expert Parallelism, 분리 추론, 예측 디코딩, Neuron Kernel Library의 최적화된 커널과 같은 기능을 통해 즉시 사용 가능한 고성능 기반으로 Trainium 및 Inferentia에서 작동하여 대규모 토큰 경제성을 극대화합니다. ML 개발자는 HuggingFace Optimum Neuron, PyTorch Lightning, TorchTitan으로 훈련한 다음 표준 VLLM API를 사용하여 추론을 배포할 수 있습니다.
혁신을 위한 설계
AI 모델을 빌드하려면 신속한 혁신과 성능 최적화가 모두 필요합니다. PyTorch와 같은 표준 프레임워크를 사용하면 실험을 쉽게 확장할 수 있지만 성능의 한계를 넓히려면 전체 스택(칩, 서버 및 UltraServer)을 최적화해야 합니다. Neuron은 ML 성능 엔지니어에게 Neuron Kernel Interface(NKI), Neuron Explorer를 통한 심층 인사이트, Neuron Kernel Library(NKiLib)라고 하는 최적화된 커널 라이브러리를 통해 AWS AI 칩에 대해 매우 뛰어난 수준의 액세스를 제공합니다. NKI는 메모리 할당, 실행 예약 및 Trainium ISA에 대한 직접 액세스를 위한 API를 제공하여 명령 수준 프로그래밍을 제어할 수 있습니다. NKI Compiler는 MLIR에 기반해 빌드된 오픈 소스이며 개발자에게 전체 컴파일러 파이프라인에 대한 가시성을 제공합니다. 오픈 소스 Neuron Kernel 라이브러리는 소스 코드, 문서 및 벤치마크를 통해 최적화된 구현을 제공합니다. Neuron Explorer는 개발자의 성능 최적화 및 디버깅 과정을 안내하는 통합 도구 모음을 제공합니다. 성능 엔지니어는 소스 코드부터 하드웨어 운영까지 하향식으로 실행을 추적하고, 단일 노드 및 분산 애플리케이션을 프로파일링하며, 커널 최적화 및 성능 개선을 위한 AI 기반 인사이트와 실행 가능한 권장 사항을 받을 수 있습니다.
오픈 소스용으로 설계
AI 혁신은 개발자가 검사, 수정 및 기여할 수 있는 오픈 커뮤니티에서 번창합니다. Neuron은 오픈 소스 커뮤니티와 혁신 촉진에 헌신합니다. 스택의 더 많은 부분을 오픈 소스로 이전하고 있지만, 현재 NKI Compiler, Neuron Kernel Driver, Neuron Kernel Library, NxD Inference, Neuron Explorer, PyTorch, JAX 및 vLLM 통합은 오나전히 오픈 소스로 지원됩니다. 오픈 소스 라이브러리 및 도구를 통해 개발자는 장벽 없이 컴파일러 구현을 검사하고, 최적화에 기여하며, 커널 코드를 조정할 수 있습니다. 함께 구축해요.
Neuron 소개
Neuron은 PyTorch와의 네이티브 통합을 제공하여 연구자와 ML 개발자가 Trainium에서 기존 코드를 변경하지 않고 실행할 수 있습니다. FSDP, DDP 및 DTensor를 포함한 표준 API는 여러 다중 노드 설정에서 분산된 훈련을 위해 원활하게 작동합니다. TorchTitan, HuggingFace Optimum Neuron, PyTorch Lightning 등과 같이 널리 사용되는 ML 라이브러리는 최소의 수정만으로 직접 실행됩니다. 실험 및 프로덕션 규모 훈련 모두에 Trainium의 성능 및 비용 이점을 활용하면서 강화 학습을 통한 사전 교육부터 사후 훈련에 이르기까지 친숙한 워크플로와 도구를 사용하여 모델을 훈련합니다.
Neuron에서는 Trainium 및 Inferentia에서 표준 프레임워크 및 API를 사용하여 프로덕션 추론을 배포할 수 있습니다. vLLM과 표준 API의 통합은 Neuron Kernel Library의 최적화된 커널과 함께 고성능 서비스를 제공합니다. Parallelism, 분리 추론, 예측 디코딩을 비롯한 고급 기능은 토큰당 비용을 최소화하면서 초당 토큰 수를 극대화합니다. 즉시 사용 가능한 성능 최적화를 통해 에이전틱 AI 및 강화 학습 워크로드를 대규모로 배포합니다.
하드웨어 효율성을 극대화하려는 성능 엔지니어를 위해 Neuron은 Neuron Kernel Interface(NKI)를 통해 NeuronISA 명령 세트에 직접 액세스하고 메모리 할당 및 실행 예약을 관리할 수 있는 완벽한 제어 기능을 제공합니다. 개발자는 표준 프레임워크에서 사용할 수 없는 새로운 작업을 생성하고 사용자 지정 커널을 사용하여 성능에 중요한 코드를 최적화할 수 있습니다. MLIR에 기반해 빌드된 오픈 소스 NKI Compiler는 컴파일 프로세스에 투명성을 제공합니다. Neuron Kernel Library는 전체 소스 코드, 문서 및 벤치마크와 함께 프로덕션에 바로 사용할 수 있는 최적화된 커널을 제공합니다.
Neuron Explorer는 개발자의 성능 최적화 및 디버깅 과정을 안내하는 통합 도구 모음을 제공합니다. Neuron Explorer는 프로파일링, 디버깅, 최적화 구현 및 개선 사항 검증을 단일 환경에 통합함으로써 단편화된 도구에서 낭비되는 시간을 줄여줍니다. PyTorch, JAX 및 NKI에 대한 코드 링크에 기반한 계층적 프로파일링은 소스 코드에서 하드웨어 작업까지 실행을 추적합니다. AI 기반 권장 사항은 프로파일을 분석하여 병목 현상을 식별하며 샤딩 전략 및 커널 최적화를 위한 실행 가능한 인사이트를 제공합니다. UI는 GitHub의 오픈 소스입니다.
Neuron은 ML 개발자와 MLOps 팀이 프로덕션 배포를 위한 운영 우수성을 유지할 수 있도록 지원하는 포괄적인 모니터링 및 관찰성 기능을 제공합니다. 네이티브 Amazon CloudWatch 통합을 통해 Kubernetes 및 Amazon EKS의 컨테이너식 애플리케이션을 지원하여 ML 인프라 전반에서 중앙 집중식 모니터링이 가능합니다. Datadog과 같은 도구와의 파트너 플랫폼 통합은 통합 모니터링, 로깅 및 경고를 통해 관찰성을 확장합니다. Neuron은 실시간 모니터링을 위한 neuron-top, 지표 수집을 위한 Neuron Monitor, 디바이스 나열을 위한 neuron-ls, 자세한 시스템 정보를 위한 Neuron Sysfs와 같은 유틸리티를 제공합니다.
Neuron은 사전 구성된 환경과 인프라 도구를 사용하여 ML 개발자 및 MLOps 팀의 배포를 단순화합니다. Neuron Deep Learning AMI(DLAMI) 및 Deep Learning Container(DLC)는 Neuron 소프트웨어 스택, 널리 사용되는 프레임워크, 핵심 라이브러리와 함께 제공됩니다. Kubernetes 배포의 경우 Neuron Device Plugin은 리소스 할당을 관리하고, Neuron Scheduler Extension은 지능형 워크로드 배치를 제공하며, Dynamic Resource Allocation(DRA) 드라이버는 직관적 크기 기반 리소스 선택에 기반해 하드웨어 토폴로지 복잡성을 추상화합니다. 헬름 차트는 컨테이너화된 배포를 위한 오케스트레이션을 간소화합니다.