안녕하세요
지난번에 이어 Flux supervisor 2부 입니다. 큰 맥락으로는 실행에 관련한 내용으로 아래의 Flux supervisor 기능들 중 2~6번에 대해 알아보도록 하겠습니다. 늘 그렇듯 바쁘신 분들은 강조된 부분만 보시면 됩니다. 추가적으로 그림이 잘 안보이면 클릭하면 크게 볼 수 있으니 참고하세요~

  • Flux supervisor 기능

  1. Flux 문서열람
  2. 시스템 옵션 설정
  3. 새 프로젝트 실행
  4. 프로젝트 열기
  5. 파이선 스크립트 실행
  6. 배치모드 실행
  7. 예제실행

2. 시스템 옵션 설정

Flux에서 주로 설정할 시스템 옵션은 사용할 메모리와 코어 설정입니다. Flux에서 메모리는 모델에 따라 자동으로 메모리를 잡는 방식이 아니라 사용자가 지정해주는 방식입니다.  사용자가 지정한 메모리에서 어느 정도 유연성을 갖어 너무 많은 차이가 나지 않는 이상 해석에 문제가 없으니 너무 신경쓰지 않으셔도 됩니다. 메모리를 미리 잡으면 다른 프로그램들의 영향을 받지 않으며 모델의 크기와 설정된 메모리를 비교하여 그에 적절한 계산방법을 자동선택하여 최적화된 계산을 가능하게 하는 장점이 있습니다.
옵션은 Flux supervisor 좌측 하단 ‘Option’을 클릭하여서 창을 열고

4편_그림 1
주목할 메뉴는 System>Memory(메모리 설정) 와 System>Parallel computing(코어 설정) 입니다.

  • 메모리 설정

System>Memory 에 들어가서 해당하는 모듈(2D, Skew, 3D, PEEC)를 선택하고 스크롤을 이동하거나 수치를 입력하여 메모리를 설정합니다. 스크롤 이동이 편하기 때문에 보통 스크롤 이동을 통해 설정합니다. 1)설정한 메모리는 설정 이후에 실행하는 프로젝트부터 적용이 되며 이전에 실행한 프로젝트에는 적용되지 않습니다.  각각의 프로젝트에 설정한 메모리가 적용되기 때문에 메모리를 크게 설정하고 여러개의 창을 띄우면 경고 창이 나타납니다.  실제 사용되는 메모리가 장비 메모리를 초과하지 않는 이상 사용에는 문제 없습니다. 하지만 설정된 메모리가 큰 경우 메모리를 최대로 사용하는 계산방법이 사용되기 때문에 동시 해석시 문제가 될 수 있으므로 2)모델에 맞는 적정 메모리를 선택하는 것이 가장 좋습니다. 마지막 팁으로는 3)배치 모드(텍스트 모드) 해석 시에느 텍스트를 많이 사용하므로 Character memory를 크게 해주시는 것이 좋습니다.

4편_그림 2

  • 코어 수 설정

System>Parallel computing에 들어가면 코어 수를 설정할 수 있습니다. 스크롤을 조절하여 코어수를 선택 할 수 있고 표시되는 코어 수는 PC의 코어수를 자동 인식하여 나타내 줍니다. 현재 제 PC의 코어가 8코어이므로 아래 그림에서 8코어까지 나타납니다. 그 아래 부분은 MPI를 사용할 경우 입력하는 사항으로 Host name과 사용할 프로세스 수를 입력하면 MPI를 이용한 해석 시 입력된 장비와 코어를 이용하여 해석합니다. 4코어 이상은 추가 라이센스가 필요하니 설정시 주의하시기 바랍니다.

4편_그림 3

  • 프로젝트에서 메모리 및 코어수 확인

프로젝트를 실행하면 Output 창에서 설정된 메모리와 코어수를 확인할 수 있습니다.
4편_그림8


3. 새 프로젝트 실행

드디어 프로젝트 실행을 하네요… 먼저1) 프로젝트를 저장할 working folder를 선택합니다. 그리고 2)상단에서 해당 모듈을 선택하고 3)좌측에서 New project를 선택 4)하단의 Start a new project를 클릭하시면 새 프로젝트가 실행 됩니다.

4편_그림 4

4. 프로젝트 열기

여는 것 자체는 새 프로젝트 큰 차이 없고 예제를 확인하는 방법에 유의하시면 되겠습니다. 먼저 1)프로젝트가 있는 폴더를 선택합니다. 그리고 2)좌측의 Open project를 선택하고 3)상단에서 모듈을 선택합니다. 그러면 4) 박스와 같이 열 수 있는 프로젝트가 표시 됩니다. 이 리스트는 선택한 모듈에 해당하는 리스트만 보여주기 때문에 만약 2D를 선택했을 때 리스트가 비어 있으면 해당 폴터에는 2D 프로젝트가 없는 것입니다. 그 후에 4)열고자 하는 프로젝트를 선택합니다. 그러면 아래에 모델의 Geometry와 프로젝트 정보를 보여 줍니다. 프로젝트 정보는 아래 그림과 같은데 주로 State와 Version를 봅니다. 이렇게 5)프로젝트 정보를 확인6)창의 좌측하단 Open the select project 버튼을 클릭 하면 해당 프로젝트가 열립니다.
리스트를 모듈에 따라 구분해 주고, 정보를 표시하는 것은 사용자가 두번 열지 않도록 돕는데 이런 세심함… 참 마음에 듭니다. ^^  Flux는 이 외에도 사용자의 실수를 줄여주는 기능들이 적용되어 있는데 연재하면서 소개시켜드리도록 하겠습니다.

  • 프로젝트 정보

– Application: 어떤 어플리케이션인지 표시합니다.
– State: Not solved와 Solved 두 상태가 있고 말 그대로 해석 여부에 따라 나타내는데 Not solved의 경우 모델, 메쉬, 전류 등의 설정이 변경 가능하고, Solved 경우 Post-process 창에 나타나기 때문에 설정변경이 불가합니다.
– Version: 해당 프로젝트를 만든 Flux 버전을 표시합니다. 하위 버전에서는 상위버전의 프로젝트가 열리지 않으니 참고하세요
– Comment : 입력된 코멘트를 표시합니다.4편_그림5

5. 파이선 스크립트 실행

Flux에서는 스크립트 기능의 활성화가 잘 되어 있습니다. 뒤에서 소개한 내용이지만 로그를 실시간으로 저장하고, 표시하고, 바로 편집 및 실행이 가능하여 코드를 잘 모르는 사람도 쉽게 사용할 수 있습니다. 갑자기 다른 길로 빠졌는데 다시 돌아오면 여기서 실행시키는 스크립트는 설정 정보가 담긴 스크립트로 용량이 큰 프로젝트 파일과 달리 저용량으로 이동 및 복사가 용이 합니다. 좀 더 나아가서 Flux 실행 없이도 어떻게 설정되어 있는지 알 수 있습니다.
실행 방법은 앞에와 같이 먼저 1)해당 파일이 있는 폴더를 선택합니다. 그리고 2)좌측의 Python script를 클릭 한 후, 3)상단에서 모듈을 선택하면 해당 모듈에 해당하는 리스트를 표시해줍니다. 4)리스트에서 실행시키고자 하는 파일을 선택하면 스크립트 내용을 아래 창에 보여주는데 단순히 보여준는 것 뿐만아니라 에디터이므로 편집이 가능합니다. 이렇게 5)편집 및 확인 후에 6)좌측 Run the selected script를 클릭하면 스크립트를 실행 시킵니다.

4편_그림6

6. 배치 모드 실행

배치 모드란 그래픽을 실행시키지 않고 백그라운에서 텍스트 모드로 실행하는 것을 말합니다. 그래픽을 나타내지 않기에 빠르게 해석할 수 있는 장점이 있습니다. Flux supervisor에서 배치 모드는 여러개의 파일을 실행 할 수 있어 시간을 절약할 수 있는 점이 큰 장점입니다.
우선, 배치모드 실행 전에 프로젝트를 해석 바로 직전까지 설정하는 준비가 필요합니다. 그 후 Flux supervisor에서 1)해당 프로젝트가 있는 폴더를 선택하고, 2)좌측에 Batch solve 버튼클릭, 3)상단에서 해당 모듈 선택, 4)리스트에서 해석하고자 하는 프로젝트들 선택 마지막으로 5)Solve sveral projects를 클릭하면 배치모드로 해석이 진행됩니다. 4)의 리스트는 다른 실행과 같이 선택된 모듈에 따라 달라집니다. 3~4번 반복했으니 이미 아셨겠지만 혹시 몰라 다시한번 말씀 드립니다. 그리고 배치 모드 실행 특징은 아래와 같은데 그 중 시나리오는 그 말처럼 해석을 어떤 시나리오로 할 것인지를 정하는 것입니다. 시간에 따른 해석을 한다면 시작 시간과 끝나는 시간 그리고 그 간격 등을 어떻게 할 것인지를 설정합니다. 추후 연재에서 소개될 것이니 모르겠다면 넘어가셔도 괜찮습니다.

  • 배치모드 실행 특징

– 선택된 프로젝트들은 동시에 실행되는 것이 아니라 순차적으로 실행됩니다.
– 시나리오는 첫번째 시나리오를 자동선택합니다.
– 실행이 되면 ‘실행 로그 표시 창’이라고 되어 있는 부분에 로그가 표시 됩니다.

4편_그림7

이번 연재는 쉽게 하겠구나 하며 시작했는데 막상하니 생각처럼 흘러가지 않네요…. 세상일은 다 그런가 봅니다…. 내용은 많은 듯 보이지만 한번 해보면 따로 기억할 필요없이 바로 캐치되는 부분이라 한번 해보시면 좋겠습니다.

다음 연재는 Flux supervisor의 마지막 부분으로 예제 실행 부분을 다룰 예정입니다. 실행방법은 위와 크게 다르지 않습니다. 단지 어떤 예제들이 있고 어떻게 선택하는지 등 자세한 설명하기 위해 따로 구성하게 되었습니다. 다음편도 많은 관심 부탁드립니다~