# ABAQUS 사용자 지침서(2020.12)

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

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

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

## **가. 사용 정책**

* 사용자별 **최대 40개 CPU 코어 수행 가능**합니다.
* <mark style="color:red;">한정된 라이선스를 슈퍼컴 사용자들이 함께 사용하므로, 사용정책 기준을 초과하여 사용할 경우 해당 작업은 관리자가 강제 종료 합니다.</mark>
* <mark style="color:red;">부득이하게 많은 라이선스가 필요할 경우, KISTI 홈페이지 (<https://www.ksc.re.kr)를> 통해 사전에 관리자와 협의해야 합니다.</mark>
* 작업 제출 전 "lic\_check" 명령 에서 메뉴 선택을 통해 라이선스 상태를 확인 한 다음 작업을 제출하시기 바랍니다.
* <mark style="color:red;">누리온시스템 로그인 노드의 과부하 방지를 위해 pre/post 작업은 허가하지 않습니다.</mark>
* <mark style="color:red;">2019년 3월 PM 이후(3월14일) 에는 작업제출 스크립트에 "#PBS -A abaqus" 옵션을 사용해야 합니다.</mark>

## **나. 소프트웨어 설치 정보**

### **1. 설치 버전**

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

***

### **2. 설치 위치**

* /apps/commercial/abaqus

***

### **3. 실행 파일 경로**

* /apps/commercial/abaqus/Commands

***

## **다. 소프트웨어 실행 방법**

### **1. 실행 방법**

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

| **형식**        | \[**command**] \[**option**]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| ------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Commands      | <p>abq6146 (6-14.6버전)</p><p>abq2016hf19 (2016 버전)</p><p>abq2017hf13 (2017 버전)</p><p>abq2018hf5 (2018 버전)</p><p>abq2019hf5 (2019 버전)</p>                                                                                                                                                                                                                                                                                                                                                                                                   |
| 예제(6.14-6 버전) | <p>abq6146 job=<mark style="color:blue;"><strong>job\_name</strong></mark> \[cpus=<mark style="color:blue;"><strong>ncpus</strong></mark>] \[input=<mark style="color:blue;"><strong>inp\_file</strong></mark>] \[interactive]</p><p>abq6146 job=<mark style="color:blue;"><strong>job\_name</strong></mark> oldjob=<mark style="color:blue;"><strong>old\_job\_name</strong></mark></p><p>abq6146 help</p><p>abq6146 information=environment</p><p>abq6146 viewer \[res=<mark style="color:blue;"><strong>res\_name</strong></mark>]</p> |

* 파란 글씨 부분을 작업명, 사용코어 수, 입력 파일 명으로 수정 후 사용하시기 바랍니다.
* Interactive 방식의 실행은 CPU time이 20분으로 제한되어 있습니다.
* 장시간의 계산 작업은 PBS라는 스케줄러를 이용하여 작업을 제출해야 합니다.
* 작업 제출 전 "lic\_check" 명령을 실행하여 라이선스 상태를 확인 후 작업을 제출하시기 바랍니다.

***

### **2. 스케쥴러 작업 스크립트 파일 작성**

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

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

* 예제 파일&#x20;
  * /apps/commercial/test\_samples/abaqus/abaqus\_v6146.sh **(단일노드에서 수행)**
  * /apps/commercial/test\_samples/abaqus/abaqus\_v6146\_multinode.sh **(멀티 노드에서 수행)**

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

```bash
#!/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
```

* 위에서 파란색으로 표기된 부분은 사용자가 적절히 수정해야 합니다.
* <mark style="color:red;">2019년 3월 PM 이후(3월14일) 부터는 "#PBS -A abaqus" 옵션이 없는 경우 작업제출이 되지 않습니다.</mark>
* **작업 제출은 스크래치 디렉토리에서만 가능** 합니다.
* 사용자별 스크래치 디렉토리는 /scratch/$USER입니다.
* <mark style="color:red;">스크래치 디스크는 작업 종료 후 일정 시간(2020년 2월 현재 정책: 15일)이 지나면 삭제되기 때문에, 작업이 완료 된경우 빠른 시일 내에 백업하시길 권장합니다.</mark>
* 기타 PBS에 관련된 명령어 및 사용법은 누리온 사용자 지침서를 참조하시면 됩니다.

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

```bash
#!/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=${NCPUS} mp_mode=threads int
```

* 위에서 파란색으로 표기된 부분은 사용자가 적절히 수정해야 합니다.
* <mark style="color:red;">2019년 3월 PM 이후 (3월14일) 부터는 "#PBS -A abaqus" 옵션이 없는 경우 작업제출이 되지 않습니다.</mark>
* **작업 제출은 스크래치 디렉토리에서만 가능** 합니다.
* 사용자별 스크래치 디렉토리는 /scratch/$USER입니다.
* <mark style="color:red;">스크래치 디스크는 작업 종료 후 일정 시간(2020년 2월 현재 정책: 15일)이 지나면 삭제되기 때문에, 작업이 완료 된경우 빠른 시일 내에 백업하시길 권장합니다.</mark>
* 기타 PBS에 관련된 명령어 및 사용법은 누리온 사용자 지침서를 참조하시면 됩니다.

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

```bash
#!/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
```

* <mark style="color:red;">위에서 빨간색으로 표기된 부분은 수정하지 마세요.</mark>
* <mark style="color:red;">2019년 3월 PM 이후(3월14일) 부터는 "#PBS -A abaqus" 옵션이 없는 경우 작업제출이 되지 않습니다.</mark>
* 위에서 파란색으로 표기된 부분은 사용자가 적절히 수정해야 합니다.
* **작업 제출은 스크래치 디렉토리에서만 가능** 합니다.
* 사용자별 스크래치 디렉토리는 /scratch/$USER입니다.
* <mark style="color:red;">스크래치 디스크는 작업 종료 후 일정 시간(2020년 2월 현재 정책: 15일)이 지나면 삭제되기 때문에, 작업이 완료 된경우 빠른 시일 내에 백업하시길 권장합니다.</mark>
* 기타 PBS에 관련된 명령어 및 사용법은 누리온 사용자 지침서를 참조하시면 됩니다.

***

### **3. 작업 제출 방법**

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

```shell-session
$ qsub abaqus.sh
```

***

### **4. 작업 상태 확인**

```shell-session
$ qstat (또는 qstat -u $USER) 
```

***

### **5. 제출된 작업을 강제로 종료**

* 사용 방법 : qdel
* 작업ID는 qstat 명령어 실행 시 제일 왼쪽에 표시 되는 정보입니다.(ex. 1771476.pbs)
* 예제 : 작업ID 가 1771476.pbs 인 경우

```shell-session
$ qdel  1771476.pbs
```

***

### **6. PBS 상에서 사용 가능한 자원 확인**

```shell-session
$ pbs_status
```

## **라. abaqus 수행 오류 관련**

* 6월 정기점검시 Lustre 파일시스템의 I/O 성능 향상을 위한 기능이 /scratch 파일시스템에 적용되었습니다.
* 이로 인해 현재 abaqus 수행시 아래와 같은 \*\*\[관련 오류 메시지]\*\*가 출력되면서 파일 접근에 대한 오류가 발생할 수 있습니다. (다만, 특정 작업의 경우 오류 메시지가 출력되지 않고 작업이 R 상태로 진행되지 않을 수 있습니다.)
* 아래 오류 메시지와 유사한 파일 접근 오류가 발생하는 경우, 다음의 절차를 먼저 진행하시고 작업을 제출하시기 바랍니다.

\[stripe count 설정 방법]

```shell-session
$ mkdir
$ lfs setstripe -c 4
$ cp *.inp # .inp 파일은 abaqus의 input 파일을 지칭합니다.
$ cp *.sh # .sh 파일은 abaqus 작업제출 스크립트를 지칭합니다.
$ cd
$ qsub
```

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

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

<mark style="color:red;">※ restart 작업과 같이 기존 파일을 활용해야 하는 경우,</mark>\ <mark style="color:red;">(stripe count 설정을 수행한 디렉토리)로 cp 명령어를 이용하여</mark> <mark style="color:red;">**기존 파일을 복사**</mark><mark style="color:red;">하여 작업을 수행해주시기 바랍니다.</mark>\ <mark style="color:red;">(mv 명령어 사용 시 기존의 속성을 유지하기 때문에 오류가 발생할 수 있습니다.)</mark>

\[관련 오류 메시지]

| <p>(1) <strong>\*\*\*ERROR: \*\*\* Error: Extend failed (utl\_File: read)</strong></p><p>(2) <em><strong>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</strong></em></p><p><em><strong>(3) terminate called after throwing an instance of 'utl\_FileExceptionExtend'</strong></em></p><p>ABAQUS/pre rank 0 received signal 6 (Aborted)</p> |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
