KISTI 슈퍼컴퓨팅 기술 블로그

누리온 ABAQUS 사용자 지침서(2020.12) 본문

사용자 지침서/누리온(NURION)

누리온 ABAQUS 사용자 지침서(2020.12)

슈퍼컴퓨팅인프라센터 2019. 6. 10. 14:43

본 문서는 누리온 시스템에서 ABAQUS 소프트웨어 사용을 위한 기초적인 정보를 제공하고 있습니다.  

따라서, ABAQUS 소프트웨어 사용법 및 누리온/리눅스 사용법 등은 포함되어 있지 않습니다.  

누리온/리눅스 사용법에 대한 정보는 KISTI 홈페이지 (https://www.ksc.re.kr)의 기술지원 > 지침서 내 누리온 사용자 지침서 등을 참고하시기 바랍니다.

 

1. 사용 정책 

 - 사용자별 최대 40개 CPU 코어 수행 가능합니다.

 - 한정된 라이선스를 슈퍼컴 사용자들이 함께 사용하므로, 사용정책 기준을 초과하여 사용할 경우 해당 작업은 관리자가 강제 종료 합니다.

 - 부득이하게 많은 라이선스가 필요할 경우, 

KISTI 홈페이지 (https://www.ksc.re.kr)를 통해 사전에 관리자와 협의해야 합니다.

 - 작업 제출 전 "lic_check" 명령 에서 메뉴 선택을 통해 라이선스 상태를 확인 한 다음 작업을 제출하시기 바랍니다.

 - 누리온시스템 로그인 노드의 과부하 방지를 위해 pre/post 작업은 허가하지 않습니다. 

 

- 2019년 3월 PM 이후(3월14일)

에는 작업제출 스크립트에 "#PBS -A abaqus" 옵션을 사용해야 합니다.

 

2. 소프트웨어 설치 정보

(1) 설치 버전

 - 6.14-6, 2016, 2017, 2018, 2019

 

(2) 설치 위치

 - /apps/commercial/abaqus

 

(3) 실행 파일 경로

 - /apps/commercial/abaqus/Commands

 

3. 소프트웨어 실행 방법

(1) 실행 방법

 - 다음과 같이 batch mode로 job을 실행하기 위한 명령어 입력

  형식

[command[option

 Commands

 abq6146 (6-14.6버전)

 abq2016hf19 (2016 버전)

 abq2017hf13 (2017 버전)

 abq2018hf5 (2018 버전)

 abq2019hf5 (2019 버전)

 예제(6.14-6 버전)

 abq6146 job=job_name [cpus=ncpus] [input=inp_file] [interactive]

 abq6146 job=job_name oldjob=old_job_name

 abq6146 help

 abq6146 information=environment

 abq6146 viewer [res=res_name]   

 - 파란 글씨 부분을 작업명, 사용코어 수, 입력 파일 명으로 수정 후 사용하시기 바랍니다.

 

 - Interactive 방식의 실행은 CPU time이 20분으로 제한되어 있습니다.

 - 장시간의 계산 작업은 PBS라는 스케줄러를 이용하여 작업을 제출해야 합니다.

 

 - 작업 제출 전 "lic_check" 명령을 실행하여 라이선스 상태를 확인 후 작업을 제출하시기 바랍니다. 

 

(2) 스케쥴러 작업 스크립트 파일 작성

 누리온 시스템에서는 로그인 노드에서 PBS라는 스케쥴러를 사용하여 작업을 제출해야 합니다. 

 누리온 시스템에서 PBS 를 사용하는 예제 파일들이 아래의 경로에 존재하므로 사용자 작업용 파일을 만들 때 이를 참고하시기 바랍니다. 

 - 예제 파일 :  /apps/commercial/test_samples/abaqus/abaqus_v6146.sh (단일노드에서 수행)

                   /apps/commercial/test_samples/abaqus/abaqus_v6146_multinode.sh (멀티 노드에서 수행)

 

 

 

※ 아래 예제는 누리온 시스템 에서의 ABAQUS 6.14-6 버전에 대한 예제입니다. (단일노드에서 수행)

 

#!/bin/sh

#PBS -V

#PBS -N abaqus_test                                                                      # JOB의 이름을 지정

#PBS -q commercial                                                                       # PBS 의 Queue 지정

#PBS -l select=1:ncpus=40:mpiprocs=40:ompthreads=1                         # 연산에 사용할 자원 지정

#PBS -l walltime=04:00:00                                                               # 예상 작업 소요시간 지정 (시:분:초)

#PBS -A abaqus

 

cd $PBS_O_WORKDIR

 

###### Do not edit #####

TOTAL_CPUS=$(wc -l $PBS_NODEFILE | awk '')

 

#####################

 

cp /apps/commercial/abaqus/6146/6.14-6/SMA/site/abaqus_v6.env  .

 

/apps/commercial/abaqus/Commands/abq6146 job=c2 cpus=${TOTAL_CPUS} int

 - 위에서 파란색으로 표기된 부분은 사용자가 적절히 수정해야 합니다.

 - 2019년 3월 PM 이후

(3월14일)

 부터는 "#PBS -A abaqus" 옵션이 없는 경우 작업제출이 되지 않습니다.

 작업 제출은 스크래치 디렉토리에서만 가능 합니다.

 - 사용자별 스크래치 디렉토리는 /scratch/$USER입니다.

 - 스크래치 디스크는 작업 종료 후 일정 시간(2020년 2월 현재 정책: 15일)이 지나면 삭제되기 때문에, 작업이 완료 된경우 빠른 시일 내에 백업하시길 권장합니다. 

 - 기타 PBS에 관련된 명령어 및 사용법은 누리온 사용자 지침서를 참조하시면 됩니다.

 

※ 아래 예제는 누리온 시스템 에서의 ABAQUS 6.14-6 버전에 대한 예제입니다. (단일노드에서 threads mode 수행)

 

#!/bin/sh

#PBS -V

#PBS -N abaqus_test                                                                      # JOB의 이름을 지정

#PBS -q commercial                                                                       # PBS 의 Queue 지정

#PBS -l select=1:ncpus=40:mpiprocs=

1

:ompthreads=40                         # 연산에 사용할 자원 지정

#PBS -l walltime=04:00:00                                                               # 예상 작업 소요시간 지정 (시:분:초)

#PBS -A abaqus

 

cd $PBS_O_WORKDIR

 

cp /apps/commercial/abaqus/6146/6.14-6/SMA/site/abaqus_v6.env  .

 

/apps/commercial/abaqus/Commands/abq6146 job=c2 cpus=${NCPUSmp_mode=threads int

 - 위에서 파란색으로 표기된 부분은 사용자가 적절히 수정해야 합니다.

 - 2019년 3월 PM 이후

(3월14일)

 부터는 "#PBS -A abaqus" 옵션이 없는 경우 작업제출이 되지 않습니다.

 작업 제출은 스크래치 디렉토리에서만 가능 합니다.

 - 사용자별 스크래치 디렉토리는 /scratch/$USER입니다.

 - 스크래치 디스크는 작업 종료 후 일정 시간(2020년 2월 현재 정책: 15일)이 지나면 삭제되기 때문에, 작업이 완료 된경우 빠른 시일 내에 백업하시길 권장합니다. 

 - 기타 PBS에 관련된 명령어 및 사용법은 누리온 사용자 지침서를 참조하시면 됩니다.

 

※ 아래 예제는 누리온 시스템 에서의 ABAQUS 6.14-6 버전에 대한 예제입니다. (멀티노드에서 수행)

#!/bin/sh

#PBS -V

#PBS -N abaqus_test                                                                      # JOB의 이름을 지정

#PBS -q commercial                                                                       # PBS 의 Queue 지정

#PBS -l select=2:ncpus=40:mpiprocs=40:ompthreads=1                         # 연산에 사용할 자원 지정

#PBS -l walltime=04:00:00                                                               # 예상 작업 소요시간 지정 (시:분:초)

#PBS -A abaqus

 

cd $PBS_O_WORKDIR

 

###### Do not edit #####

export MPI_IC_ORDER=TCP

TOTAL_CPUS=$(wc -l $PBS_NODEFILE | awk '')

nodes="["

for n in $(sort -u $PBS_NODEFILE)

do

nodes="$['$n',$(grep -c $n $PBS_NODEFILE)],"

done

nodes=$(echo $ | sed -e "s/,$/]/")

echo "abaquslm_license_file=\"2501@vaccine02.ext\"" > abaqus_v6.env

echo "mp_host_list=$" >> abaqus_v6.env

 

########################

 

/apps/commercial/abaqus/Commands/abq6146 job=c2 cpus=$ mp_mode=mpi int

 - 위에서 빨간색으로 표기된 부분은 수정하지 마세요.

 

- 2019년 3월 PM 이후(3월14일)

 부터는 "#PBS -A abaqus" 옵션이 없는 경우 작업제출이 되지 않습니다.

 - 위에서 파란색으로 표기된 부분은 사용자가 적절히 수정해야 합니다.

 - 작업 제출은 스크래치 디렉토리에서만 가능 합니다.

 - 사용자별 스크래치 디렉토리는 /scratch/$USER입니다.

 - 스크래치 디스크는 작업 종료 후 일정 시간(2020년 2월 현재 정책: 15일)이 지나면 삭제되기 때문에, 작업이 완료 된경우 빠른 시일 내에 백업하시길 권장합니다. 

 - 기타 PBS에 관련된 명령어 및 사용법은 누리온 사용자 지침서를 참조하시면 됩니다.

 

(3) 작업 제출 방법

 - 예제 : 스크립트 파일 이름이 abaqus.sh 인 경우

 $ qsub abaqus.sh

 

(4) 작업 상태 확인

 $ qstat (또는 qstat -u $USER) 

 

(5) 제출된 작업을 강제로 종료

 - 사용 방법 : qdel 

 - 작업ID는 qstat 명령어 실행 시 제일 왼쪽에 표시 되는 정보입니다.(ex. 1771476.pbs)

 - 예제 : 작업ID 가 1771476.pbs 인 경우

 $ qdel  1771476.pbs

 

(6) PBS 상에서 사용 가능한 자원 확인

 $ pbs_status

 

 

4. abaqus 수행 오류 관련

 - 6월 정기점검시 Lustre 파일시스템의 I/O 성능 향상을 위한 기능이 /scratch 파일시스템에 적용되었습니다.

 - 이로 인해 현재 abaqus 수행시 아래와 같은 [관련 오류 메시지]가 출력되면서 파일 접근에 대한 오류가 발생할 수 있습니다.

   (다만, 특정 작업의 경우 오류 메시지가 출력되지 않고 작업이 R 상태로 진행되지 않을 수 있습니다.)

 - 아래 오류 메시지와 유사한 파일 접근 오류가 발생하는 경우, 다음의 절차를 먼저 진행하시고 작업을 제출하시기 바랍니다.

 

[stripe count 설정 방법]

$ mkdir 

$ lfs setstripe -c 4 

$ cp *.inp                          # .inp 파일은 abaqus의 input 파일을 지칭합니다.

$ cp *.sh                           # .sh 파일은 abaqus 작업제출 스크립트를 지칭합니다.

$ cd 

$ qsub

* : 입력 데이터가 위치하고 있으며, 출력 데이터가 기록될 디렉토리

* 하위 디렉토리를 생성하는 경우 동일한 작업을 수행하셔야 합니다. 

 

※ restart 작업과 같이 기존 파일을 활용해야 하는 경우

(s

tripe count 설정을 수행한 디렉토리)cp 명령어를 이용하여 기존 파일을 복사하여 작업을 수행해주시기 바랍니다.

 (mv 명령어 사용 시 기존의 속성을 유지하기 때문에 오류가 발생할 수 있습니다.)

   

 

[관련 오류 메시지]

(1) ***ERROR: *** Error: Extend failed (utl_File: read)

(2)  ***NOTE: DUE TO AN INPUT ERROR THE ANALYSIS PRE-PROCESSOR HAS BEEN UNABLE

            TO INTERPRET SOME DATA. SUBSEQUENT ERRORS MAY BE CAUSED BY THIS OMISSION

(3) terminate called after throwing an instance of 'utl_FileExceptionExtend'

     *** ABAQUS/pre rank 0 received signal 6 (Aborted)

 

Comments