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