모바일 메뉴 닫기
 

데이터센터

FAQ

게시글 검색
전체

  • 1. 에러메시지 중 disk quota exceeded관련 메시지가 있는지 확인하기

    (예: 987c0d5c3df5c45f6b15e77d1': Disk quota exceeded)



    quota exceed인 경우 디스크 용량이 부족하므로 ssh등으로 접속하여 필요없는 파일들 지우고 해보기


    2. 에러를 못찾을 경우


    본인 사용량 확인 방법 (아래 ID에 본인 아이디를 넣으세요)

    >> xfs_quota -x -c 'report -h -u' /home | grep ID


    90G이상인 경우에도 디스크 용량이 부족할 수 있으므로 ssh등으로 접속하여 필요없는 파일들 지우고 해보기



    3. rm -rf ~/.vscode-server

    실행한 후 다시 해보기



  • anaconda를 설치한 후 srun은 그냥 바로 사용하실 수 있고


    sbatch는 script 파일안에 source .bashrc부분을 추가하면 됩니다.


    - srun 수행


    - source .bashrc를 추가하지 않았을 때의 에러


    - source .bashrc를 추가한 경우 에러 없이 수행됨


  • GPU node의 경우 2가지 partition이 있습니다

    AI 연구하는 학생들의 편의를 위해 독점을 허용하는 big partition(gpu 50장까지 허용- 변동 가능)과 공평하게 자원을 나누어쓸 수 있는 base partition이 있습니다.

    그런데 base partition은 인당 4장의 gpu를 허용하다보니 유휴자원이 생겨도 4장 이상 필요한 사람들은 못쓰게 되어 사용자가 적은 경우 GPU사용률이 저조하게 됩니다.

    하여 job의 QoS를 나누어서 base_q는 gpu 4장씩 허용하고 big_q는 gpu 50장 사용(변동 가능)이 가능합니다.

    하지만 base_q의 우선순위를 높게 하여 big_q job이 여러개 돌고 있을 때 base_q job이 대기하는 경우 대기 시점에서 3시간 후에 preemption 될 수 있도록 해놓았습니다.

    preemption되면서 아래와 같은 형태의 메시지가 발생합니다.


    slurmstepd: error: *** JOB 355071 ON node14 CANCELLED AT 2023-05-22T04:22:49 DUE TO PREEMPTION ***


    job을 여러개 돌리면서 preemption되지 않길 원하는 경우 big partition의 노드를 배정받아야 합니다.


    이에 대해 좀 더 자세히 설명한 부분은 아래 페이지를 참고하시기 바랍니다.

    https://ai.yonsei.ac.kr/grad/resourcePolicy.do


    "공평"과 "자원활용의 최대화"를 만족시킬 수 있는 좋은 의견있으시면 언제든 알려주세요.

  • 현재 개인당 100G의 디스크공간을 할당하고 있는데,
    데이터셋이 커서 부족한 경우, 3가지 방법이 있으니 판단하셔서 신청하시면 됩니다.


    1. 다른 사람들도 같이 사용할 만한 dataset인 경우/home/upload 폴더에 NAS에 옮겨질 데이터를 복사해놓고 메일보내주시면 
    관리자가 NAS로 옮기고 알려드립니다.
    참고: \datasets(NAS가 \datasets로 마운트되어있고 지워지지 않음)
    scp -R source  id@165.132.142.80:/home/upload

    2. 혼자만 사용하는 경우 /scratch로 마운트된 다른 스토리지를 사용하실 수 있습니다.

    임시 저장공간으로 생각하면 됩니다. 

    단 사용안한지 30일이 넘으면 자동삭제됩니다.

    3. 로컬로 용량을 늘리고 싶은 경우 신청서를 작성하셔야 합니다.

    관리자에게 신청서 요청하세요.

    계정 등록 신청서에 용도를 권한변경으로 체크해주시구요
    기타 요청 사항란에 다음 항목을 기입해주세요.

    <저장용량 요청>
    - 필요한 추가저장용량
    - 기한 명시(언제부터 언제까지 필요로 하는지) <= 최대 연말까지, 이후 재작성 
    - 목적 및 사유


  • 실행중인 Job을 중단 명령어:


    >> scancel JobID


  • 자원정책이 "공평"과 "자원 활용의 최대화"이라는 상충된 

    목표를 만족시켜야 하다보니 자원사용 policy가 좀 복잡하게 되어있습니다.


    <Partition>

    2가지 partition으로 이루어져있습니다.

    AI 연구하는 학생들의 편의를 위해 독점을 허용하는 big partition(gpu개수 제한없음)과 공평하게 자원을 나누어쓸 수 있는 base partition이 있습니다.


    <QoS>

    그런데 base partition은 인당 4개의 gpu씩 쓰도록 허용하다보니 유휴자원이 생겨도 4개이상 필요한 사람들은 못쓰게 되어 GPU사용률이 저조하게 됩니다.

    그래서 job의 QoS를 나누어서 base_q는 gpu 4개씩 허용하고 big_q는 gpu 제한없이 사용이 가능합니다. 하지만 base_q의 우선순위를 높게 하여 big_q job이 여러개 돌고 있을 때 base_q job이 대기하는 경우 대기 시점에서 3시간 후에 preemption 될 수 있도록 해놓았습니다.


    이에 대해 좀 더 자세히 설명한 부분이 아래 있습니다.

    https://ai.yonsei.ac.kr/grad/resourcePolicy.do


    "공평"과 "자원활용의 최대화"를 만족시킬 수 있는 좋은 의견있으시면 

    언제든 알려주세요.


  • sbatch 스크립트 내에서 python 사용시

    python 명령에 -u 옵션을 사용하면 실시간으로 출력을 받을 수 있습니다.

  • 도커 사용은 root 권한이 필요한데, 허용되지 않으므로 다소 복잡한 절차를 거쳐야 합니다.


    1) 사용자의 PC 에서 원하는 docker image pull 
    2) 사용자의 PC 에서 docker image 에 패키지 설치
    3) 사용자의 PC 에서 docker image commit (사용자 pc에 현재 상태의 이미지 저장)
    4) 사용자의 PC 에서 commit 된 docker image 를 tarball 로 저장
    5) 저장된 tarball 이미지를 클러스터로 전송 (scp사용)
    6) 클러스터에서 tarball 이미지를 singularity 로 변환 
    7) 변환된 singularity 이미지를 실행.


    약간더 간소화 할 수 있는 방법으로tarball 을 생성해서 scp 로 전송하지 않고 docker hub 를 사용하는 방법도 가능 합니다.

    1) 사용자의 PC 에서 원하는 docker image pull
    2) 사용자의 PC 에서 docker image 에 패키지 설치
    3) 사용자의 PC 에서 docker image commit (사용자 pc에 현재 상태의 이미지 저장)
    4) 사용자 계정의 docker hub 로 image push
    5) 클러스터에서 사용자 계정의 docker hub 의 이미지를 통해 singularity 이미지 생성
    6) 변환된 singularity 이미지를 실행


  • 노드에서 실행되는  jupyter lab 으로 접속할 수 있는 방법은 두가지가 있습니다.


    1. x11 forwading 을 사용.
    login node 에 접속한 후 firefox 를 x11 forwading 을 통해 실행한 후

    (로그인 후  'firefox &' 입력)
    srun 으로 노드를 할당 받아  jupyter lab 을 구동 시키고 실행된 포트가 확인되면
    login node 에서 열린 firefox 에서 해당 node ip 와 port 를 입력해서 열수 있습니다.


    jupyter lab을 구동시킬때 ip option을 추가해야 합니다.

    예) node14번인 경우 ip address는 10.1.1.29이고

    >jupyter lab --ip=10.1.1.29 

    실행 후 아래 빨간 부분의 링크를 복사하여 firefox의 주소창에 입력하면 된다.



    2. ssh "-D"  옵션을 사용한 socks proxy 사용.

    https://ma.ttias.be/socks-proxy-linux-ssh-bypass-content-filters/

    사용자 자리에서 login node 로 접속할때 -D 옵션을 사용해서 socks proxy 를 구성한 다음
    web browser 에서 해당 포트로 proxy 설정을 하면
    ssh 연결을 타고 클러스터 내부의 망으로 web 접속을 할 수 있습니다.
    위와 마찬가지로 srun 으로 노드를 할당 받아  jupyter lab 을 구동 시키고 실행된 포트가 확인되면
    web browser 에서 해당 node ip 와 port 를 입력해서 열수 있습니다.