Articlehuggingface.co·2026년 10월 23일·0

Does Your Model Run on AWS Trainium? Look It Up

Quick Summary

torch neuronx model support Space는 Hub의 인기 Transformers 모델이 AWS Trainium에서 수정 없이 실행되는지 확인하고, 테스트 환경과 재현 스크립트를 제공한다.

Does Your Model Run on AWS Trainium? Look It Up 관련 대표 이미지

🖼️ 인포그래픽

Does Your Model Run on AWS Trainium? Look It Up 내용을 설명하는 본문 이미지

🖼️ 4컷 인포그래픽

Does Your Model Run on AWS Trainium? Look It Up의 핵심 내용을 4단계로 요약한 인포그래픽
Does Your Model Run on AWS Trainium? Look It Up 핵심 내용을 4단계로 압축한 4컷 인포그래픽

💡 한 줄 요약

torch-neuronx model support Space는 Hub의 인기 Transformers 모델이 AWS Trainium에서 수정 없이 실행되는지 확인하고, 테스트 환경과 재현 스크립트를 제공한다.

📌 핵심 요약

  • TorchNeuron은 AWS Trainium용 네이티브 PyTorch 백엔드인 torch-neuronx 패키지이며, Transformers 자체 모델링 코드를 실행한다. torch-neuronx model support Space는 Hub 인기 모델의 실제 실행 여부를 공개한다.
  • Selected는 다운로드 수와 트렌딩 점수를 바탕으로 선정한 모델을 보여주며, Trending과 Downloads에서는 모델명 일부로 검색하고 neuronx-cc 및 Transformers 버전을 선택할 수 있다. 작성 시점의 테스트 대상은 Transformers의 text-generation과 image-text-to-text 모델로 제한된다.
  • Space는 테스트한 Neuron 스택, 추가 설치 패키지, run.py를 제공한다. Trainium2의 trn2 인스턴스에서 재현할 수 있으며, 동일한 컴파일러 버전으로 생성한 그래프를 공개 NEFF cache에서 가져오면 첫 실행의 컴파일 단계를 건너뛸 수 있다.
  • 테스트는 가중치를 수용하는 최소 Trainium 코어 수에 모델을 분할해 32개 토큰을 생성한다. 단일 코어에서는 동일 체크포인트의 CPU 출력 토큰과 비교하고, 분할 실행에서는 작은 판정 모델로 영어 문장의 유창성을 확인한다. 테스트 범위는 Trainium2 장치 4개, 최대 16코어이며, PASS는 처리량이나 더 긴 생성의 성능을 보장하지 않는다.
  • Space의 모든 표시 정보는 공개 aws-neuron/torch-neuronx-model-support 데이터셋에서 가져온다. neuronx-cc와 라이브러리 버전 조합별 Parquet 파일에 모델 결과, 실패 오류, 전체 스택 버전과 실행한 run.py가 기록되며 직접 조회할 수 있다.

🧩 주요 포인트

  1. 모델과 neuronx-cc·Transformers 버전별 결과 제공 → Trainium 실행 가능성을 확인할 때 모델명과 소프트웨어 조합을 함께 살펴볼 수 있다.
  2. Neuron 스택·run.py·공개 NEFF cache 제공 → 테스트 환경을 재현하고 동일 컴파일러의 기존 그래프를 재사용할 수 있다.
  3. 개 토큰·최대 16코어로 제한된 검증 → PASS를 해당 조건의 실행 결과로 해석하고, 처리량과 더 긴 생성은 별도로 판단해야 한다.

🧠 상세 정리

1. TorchNeuron의 실행 가능성을 실제 결과로 확인

글은 앞서 소개한 TorchNeuron을 바탕으로, Hub의 어떤 모델이 AWS Trainium에서 실제로 실행되는지 확인하는 방법을 설명한다. TorchNeuron은 torch-neuronx 패키지로 제공되는 네이티브 PyTorch 백엔드이며, Transformers가 다른 장치에서처럼 자체 모델링 코드를 Trainium에서도 실행하도록 한다. 이 구조에서는 Hub의 모든 Transformers 모델이 실행 후보가 될 수 있지만, 각 모델의 실제 실행 여부는 확인이 필요하다. torch-neuronx model support Space는 Hub 인기 모델을 대상으로 수정 없이 실행되는지를 보여주고, 사용자가 직접 실행해 볼 수 있는 스크립트도 제공한다.

2. 모델 검색과 테스트 대상의 범위

Space의 기본 화면인 Selected에는 Hub의 다운로드 수와 트렌딩 점수를 기준으로 고른 모델이 표시된다. 각 행에서는 실행 결과, 모델을 분할한 Trainium 코어 수, 컴파일을 포함한 전체 실행 시간, 최대 장치 메모리 사용량을 확인할 수 있다. 특정 모델은 Trending 또는 Downloads 화면에서 이름 일부로 검색할 수 있으며, 두 화면은 테스트 여부와 관계없이 작업별 Hub 순위를 따른다. 의도적으로 제외한 모델에는 사유가 표시되는데, 대개 우선순위 문제이고 일부는 실제 비호환 때문이다. neuronx-cc와 Transformers 버전도 선택할 수 있으며, 작성 시점에는 Transformers의 text-generation과 image-text-to-text 모델만 테스트하고 diffusers, sentence transformers 및 다른 작업으로의 확대를 계획하고 있다.

3. 테스트 환경과 run.py로 실행 재현

모델을 선택하면 테스트에 사용한 Neuron 스택과 그 위에 추가로 설치할 패키지, 실제 실행한 run.py를 확인할 수 있다. 스크립트는 from_pretrained로 모델을 불러오고 필요하면 분할한 뒤, 정적 캐시와 torch.compile(backend="neuron")을 사용해 텍스트를 생성한다. 해당 스택을 갖춘 Trainium2의 trn2 인스턴스에서 패키지를 설치하고 python3 run.py를 실행하는 방식이며, AWS Neuron Deep Learning Container가 환경의 예로 제시된다. 모델이 분할된 경우에도 스크립트가 필요한 torch.distributed 랭크를 직접 시작하므로 별도의 torchrun 호출은 필요하지 않다.

4. 공개 NEFF cache를 통한 컴파일 결과 재사용

첫 실행은 모델의 그래프를 컴파일하는 단계부터 시작하며, Space에 표시되는 전체 실행 시간에도 컴파일 시간이 포함된다. 이 단계를 건너뛰려면 테스트에서 동일한 컴파일러가 생성한 그래프를 공개 NEFF cache 버킷에서 복사할 수 있다. Space는 필요한 컴파일러 버전에 맞는 명령을 제공하며, hf buckets sync로 aws-neuron/torch-neuronx-neff-cache 아래의 neuronxcc-<version> 경로를 /tmp/neff_cache에 동기화하는 형태다. 따라서 캐시를 활용한 재현에서는 Space에 제시된 컴파일러 버전과 그 버전에 대응하는 그래프를 함께 확인하는 것이 핵심이다.

5. 실행 성공의 검증 방법과 PASS의 한계

각 테스트는 trn2 인스턴스에서 모델을 불러오고, 가중치를 담을 수 있는 최소 Trainium 코어 수에 분할한다. 대부분은 텐서 병렬화를 사용하며, 텐서 병렬화 계획이 없는 혼합 전문가 모델은 전문가 병렬화만 사용한다. 이어서 32개 토큰을 생성하고, 단일 코어 실행이면 동일 체크포인트의 CPU 실행 토큰과 비교한다. 분할 실행에서는 작은 판정 모델이 생성된 텍스트가 유창한 영어인지 확인한다. 작성 시점의 테스트 대상은 Trainium2 장치 4개, 즉 최대 16코어에 들어가는 모델로 제한된다. 따라서 PASS는 이러한 조건의 검증 결과이며, 처리량이나 더 긴 생성에 대해서는 아무것도 말해 주지 않는다.

6. 공개 데이터셋으로 결과 직접 조회

Space가 보여주는 모든 정보의 원천은 공개 aws-neuron/torch-neuronx-model-support 데이터셋이다. 데이터는 neuronx-cc와 라이브러리 버전의 조합마다 하나의 Parquet 파일로 제공되며, 각 행에는 모델의 결과, 실패 시 오류, 전체 스택 버전과 실제 실행한 run.py가 담긴다. 글은 pandas의 read_parquet로 데이터셋을 읽은 뒤 Qwen/Qwen3-0.6B를 골라 neuronx_cc, library, library_version, neuron_cores, result 열을 조회하는 예를 제시한다. 각 결과 값의 정확한 의미는 데이터셋 카드에 설명되어 있으므로, 화면에서 모델을 검색하는 것과 함께 원자료를 직접 조회하고 결과의 정의를 확인할 수 있다.

🧾 핵심 주장 / 시사점

  • Hub 순위 화면은 미테스트 모델도 포함하므로, 목록에 등장한다는 사실과 Trainium 실행 검증을 통과했다는 사실을 구분해야 한다. 제외 사유 역시 우선순위와 실제 비호환으로 나뉜다.
  • 전체 실행 시간에는 컴파일이 포함되고 기존 그래프를 재사용하는 방법도 제공되므로, 표시된 시간을 해석할 때 컴파일 조건을 함께 고려해야 한다.
  • 단일 코어의 CPU 토큰 비교와 분할 실행의 영어 유창성 판정은 검증 기준이 다르므로, PASS를 해석할 때 실행 방식과 판정 범위를 함께 살펴볼 필요가 있다.

✅ 액션 아이템

  • torch-neuronx model support Space에서 대상 모델과 neuronx-cc·Transformers 버전별 실행 결과 확인.
  • Trainium2의 trn2 인스턴스에서 제공된 Neuron 스택과 run.py로 실행을 재현하고, 동일 컴파일러 버전의 공개 NEFF cache 활용 여부 검토.
  • PASS를 32개 토큰·최대 16코어 조건의 결과로 해석하고, 처리량과 더 긴 생성에 대한 추가 검증 필요성 판단.

❓ 열린 질문

  • 대상 모델은 어떤 neuronx-cc·Transformers 버전 조합에서 수정 없이 실행되는가?
  • 제공된 Neuron 스택과 run.py로 실행을 재현할 때 동일 컴파일러 버전의 공개 NEFF cache를 사용할 수 있는가?
  • 32개 토큰·최대 16코어 조건에서 PASS를 받은 모델은 더 긴 생성에서도 동작하며 필요한 처리량을 충족하는가?

관련 문서

공통 태그와 주제 흐름을 기준으로 같이 보면 좋은 문서를 이어서 제안합니다.