다음을 통해 공유


애플리케이션 및 데이터 파일 이해

HPC 팩은 작업 입력, 출력 및 오류 파일의 구성과 관련하여 유연합니다. 작업 디렉터리, 표준 입력, 표준 출력표준 오류 작업 속성을 사용하여 공유 위치에 대한 로컬 또는 UNC(유니버설 명명 규칙) 파일 경로를 지정할 수 있습니다. 작업은 기본 작업 디렉터리에 저장된 파일에서도 작동할 수 있습니다. 두 경우 모두 공유 폴더의 중앙 파일 저장소를 사용하는 것이 좋습니다. 파일 서버에서 사용하는 것이 좋습니다.

작업에 대한 표준 출력표준 오류 파일을 지정하지 않으면 결과가 hpcsheduler 데이터베이스로 전달되고 작업 보기 대화 상자에 태스크의 출력 필드로 표시됩니다. 데이터베이스는 작업당 최대 4KB의 데이터를 저장합니다. 4KB를 초과하는 추가 데이터는 잘립니다. 표준 출력표준 오류 파일을 지정하면 작업 출력이 해당 위치로 전달됩니다.

비고

파일 경로를 지정할 때 이러한 파일은 컴퓨팅 노드에서 액세스됩니다. 예를 들어 "C:\Temp"는 헤드 노드 또는 클라이언트 컴퓨터의 Temp 디렉터리가 아니라 애플리케이션을 실행하는 컴퓨팅 노드의 Temp 디렉터리를 나타냅니다.

프로그램 파일

작업에 대한 명령줄에서 프로그램 파일을 지정할 때 다음 지침을 사용합니다.

  • 애플리케이션이 모든 컴퓨팅 노드에 있고 환경 변수에 Path 추가된 경우 실행 파일 이름만 입력합니다. 예를 들어 myapp.exe입력합니다.

  • 애플리케이션이 모든 컴퓨팅 노드에 있고 환경 변수에 Path 추가되지 않은 경우 각 컴퓨팅 노드에서 애플리케이션에 대한 전체 로컬 경로를 입력합니다. 예를 들어 C:\Program Files\myapp.exe.

  • 애플리케이션이 파일 공유에 설치된 경우 실행 파일의 UNC 경로를 지정합니다. 예를 들어 \\server_name\Program Files\myapp.exe입력합니다.

데이터 파일

기본적으로 표준 입력, 출력 및 오류 파일은 애플리케이션을 실행하는 컴퓨팅 노드의 작업 디렉터리를 기준으로 합니다. 작업 디렉터리 작업 속성의 기본값은 노드에서 제출하는 사용자의 홈 디렉터리입니다(%userprofile%일반적으로 C:\Users\user_name\Documents를 가리킵니다).

작업 디렉터리 작업 속성을 사용하여 공유 폴더의 데이터 파일에 대한 작업 액세스를 간소화할 수 있습니다. 예를 들어 \\fileserver\fileshare\의 작업 디렉터리와 somefile.txt표준 입력을 설정하는 경우 표준 입력\\fileserver\fileshare\somefile.txt읽습니다.

작업에 대한 표준 출력표준 오류 파일을 지정하지 않으면 결과가 작업 스케줄러 서비스 데이터베이스로 전달되고 작업 속성 대화 상자에 태스크의 출력 필드로 표시됩니다. 데이터베이스는 작업당 최대 4KB의 데이터를 저장합니다. 4KB를 초과하는 추가 데이터는 잘립니다. 표준 출력표준 오류 파일을 지정하면 작업 출력이 해당 위치로 전달되고 작업 스케줄러 서비스 데이터베이스에 저장되지 않습니다.

하위 작업 및 별표가 있는 작업(*)

하위 작업이 포함된 작업에서는 매개 변수 스윕 인덱스( Parametric Sweep 작업) 또는 하위 작업 ID( 서비스, 노드 준비노드 릴리스 작업)의 자리 표시자로 별표(*) 문자를 사용할 수 있습니다. 예를 들어 첫 번째 하위 작업 \\datashare\userName\file*.txt 에서 매개 변수 스윕 태스크에서 첫 번째 인덱스 값으로 해석 \\datashare\userName\file1.txt 됩니다.

인덱스 또는 하위 작업의 수를 표현할 때 사용할 최소 위치 수를 나타내는 별표(*)를 둘 이상 포함할 수 있습니다. 이렇게 하면 더 많은 위치가 필요한 숫자가 제한되지 않습니다. 예를 들어 첫 \\datashare\userName\file****.txt 번째 하위 작업에서와 같이 \\datashare\userName\file0001.txt 해석됩니다.

작업 스케줄러는 명령을 계산 노드로 보내기 전에 해석합니다. 별표(*)를 사용하는 명령을 실행하려면 이스케이프 문자로 caret(^)를 포함합니다. 예를 들어 폴더에서 모든 파일을 삭제하는 노드 릴리스 작업을 만들려면 다음과 같이 명령을 입력할 수 있습니다.

delete c:\temp\^*

비고

명령 프롬프트 창에서 제출된 명령은 작업 스케줄러에 전달되기 전에 해석됩니다. 명령 프롬프트 창에서 동일한 명령을 실행하는 작업을 제출하려면 이스케이프 문자를 추가해야 합니다. 예: delete c:\temp\^^*

작업 스케줄러는 명령을 다음과 같이 delete c:\temp\^*수신하고 컴퓨팅 노드는 다음 명령을 받습니다. delete c:\temp\*

추가 고려 사항

  • 네트워크 공유에 액세스할 때는 다른 로그온 세션 간에 매핑이 유지되지 않으므로 드라이버 문자 매핑을 사용하는 대신 전체 UNC 경로를 사용합니다.

  • 입력, 출력 및 오류 파일에 대한 파일 저장소를 만드는 것은 일반적으로 클러스터 관리자와 사용자 간의 조정된 작업이며, 공유 리소스에 대한 관리자의 권한과 감독 및 관련된 프로젝트, 작업 및 파일에 대한 사용자의 특정 지식이 필요합니다.

추가 참조