티스토리 뷰

Study/AI

[AWS] Sagemaker GPU instance 추가

생각많은 소심남 2019. 3. 14. 23:50

 udacity 마지막 과제가 AWS Sagemaker를 이용해서 XGBoost를 구현하고 training시키는 것인데, 많은 데이터를 학습하다보니, GPU instance가 필요한 경우가 생겼다. 분명 난 회사에서도 AWS Hands-on-Lab을 수행한다고 사전에 GPU instance 제한을 풀어놨었다.

그런데 막상 Sagemaker내에서 GPU instance를 쓰려니까 다음과 같은 오류가 발생했다.

<코드>

  1. from sagemaker.pytorch import PyTorch
  2.  
  3. estimator = PyTorch(entry_point="train.py",
  4.                     source_dir="train",
  5.                     role=role,
  6.                     framework_version='0.4.0',
  7.                     train_instance_count=1,
  8.                     train_instance_type='ml.p2.xlarge',
  9.                     hyperparameters={
  10.                         'epochs'10,
  11.                         'hidden_dim'200,
  12.                     })


<오류>

ResourceLimitExceeded: An error occurred (ResourceLimitExceeded) when calling the CreateTrainingJob operation: The account-level service limit 'ml.p2.xlarge for training job usage' is 0 Instances, with current utilization of 0 Instances and a request delta of 1 Instances. Please contact AWS support to request an increase for this limit.

 삽질해보면서 안건데, 맨 처음 인스턴스의 갯수는 ec2 instance내에서 사용가능한 gpu instance를 표시한 것이었고, 실제로 sagemaker에서 필요한 gpu instance는 이와 별개인 'ml.p2.xlarge'이다. 그래서 여기에 사용될 gpu instance는 따로 Sagemaker training용 gpu instance로 다시 사용제한을 풀어야 한다. 방법은 물론 기존 service limit increase 방법을 사용하되 안의 form이 약간 다르다.

이렇게 하고 24시간~48시간 정도 기다리면 된다. Sagemaker 쓰는 사람은 이렇게 삽질 안했으면 좋겠다.

댓글