병렬 For 루프 반복을 설정하여 성능 변경하기
- 업데이트 날짜:2025-08-27
- 2분 (읽기 시간)
병렬 For 루프 반복을 활성화하는 경우, 병렬 인스턴스 P와 그룹 크기 C 터미널을 사용하여 프로그램식으로 성능을 변경할 수 있습니다. 터미널의 기본 설정은 대부분의 경우 최적의 성능 향상 결과를 낳기 때문에, 프로그램적인 설정은 극히 일부의 경우에만 필요합니다. 그러나, 병렬 인스턴스와 그룹 크기 터미널을 사용하여 기본 설정과 다르게 설정을 사용자 정의할 수 있습니다.
병렬 인스턴스 터미널을 사용하여 성능 변경하기
병렬 For 루프 반복을 활성화하면, 병렬 인스턴스 터미널이 For 루프 안에 나타납니다. 숫자값을 병렬 인스턴스 터미널에 연결하여 병렬 인스턴스 실행 횟수를 프로그램적으로 설정합니다. 컴파일 할 때, LabVIEW는 For 루프 반복 병렬 처리 대화 상자의 생성된 병렬 루프 인스턴스 개수 필드에 연결한 최소값과 같은 병렬 인스턴스 개수를 생성합니다. 프로세서는 병렬 인스턴스를 동시에 실행하여 성능을 향상합니다.
병렬 인스턴스 터미널의 입력에 값을 연결하지 않으면, LabVIEW는 자동으로 컴퓨터의 논리적 프로세서의 수를 감지하여, 이 수를 병렬 인스턴스 터미널 기본값으로 사용합니다. 대부분의 경우 병렬 인스턴스 실행 횟수가 컴퓨터의 프로세서 수와 같을 때 성능이 최적화되기 때문에, 병렬 인스턴스 터미널의 입력을 연결하지 않지 말아야 합니다.
For 루프에 기다림 작업을 수행하는 코드가 있을 때, 루프 인스턴스 실행 횟수가 논리적 프로세서 수보다 큰 경우에 성능이 최적화됩니다. 예를 들어, 병렬 For 루프 인스턴스가 외부 하드웨어로부터 데이터를 수집하기 위해 기다릴 때, 초과 구독하여 프로세서가 첫번째 병렬 인스턴스를 기다리는 동안 두번째 병렬 인스턴스를 실행할 수 있습니다. 병렬 For 루프 인스턴스가 다른 계산 집약적인 코드와 동시에 실행되는 경우, 실행하는 병렬 인스턴스 개수가 논리적 프로세서의 개수보다 적은 경우, 성능이 최적화됩니다. 예를 들어 For 루프와 SubVI가 동시에 실행되는 경우, 병렬 인스턴스 개수가 논리적 프로세서 개수보다 적으면 For 루프에 할당되는 리소스가 제한되고, 다른 작업에 사용하기 위해 리소스가 예약됩니다.
그룹 크기 터미널을 사용하여 반복 스케줄 사용자 지정하기
LabVIEW는 루프 반복을 루프 반복으로 구성되는 그룹으로 나눕니다. 병렬 반복이 활성화되면, 프로세서는 이러한 그룹을 동시에 실행하여 실행 속도를 향상시킵니다. LabVIEW는 크기가 큰 그룹부터 작은 그룹의 순서로 실행을 스케줄하도록 기본 설정되어 있습니다. 큰 그룹을 먼저 실행하면 스케줄 오버헤드가 감소하고, 작은 그룹을 먼저 실행하면 프로세서 유휴 시간이 감소합니다. 작은 그룹을 큰 그룹보다 먼저 실행하도록 스케줄하는 것과 같이 기본 설정과 다른 반복 스케줄을 사용하는 것이 For 루프에 유용한 경우에만 프로그램적으로 그룹 크기를 설정해야 합니다.
병렬 For 루프 반복을 활성화한 후, 다음 단계를 따라 그룹 크기 터미널을 사용해서 프로그램적으로 반복 스케줄을 설정합니다:
- For 루프에서 마우스 오른쪽 버튼을 클릭하고 반복 병렬 처리 설정을 선택합니다. LabVIEW에 For 루프 반복 병렬 처리 대화 상자가 나타납니다.
- 반복 분할 스케줄 섹션에서 그룹 크기(C) 터미널로 분할 지정을 선택합니다. 그룹 크기 터미널은 병렬 인스터스 터미널 아래에 나타납니다.
- 숫자값 또는 숫자값 배열을 그룹 크기 터미널에 연결합니다.
숫자값을 그룹 크기 터미널에 연결하면, 이 값이 각 그룹에 포함할 반복의 횟수를 지정합니다. 숫자값 배열을 연결하면 그룹 크기를 보다 정밀하게 컨트롤할 수 있습니다. 배열의 각 값은 각 그룹에 포함할 반복 횟수를 지정하고, 이 때 첫번째 그룹은 인덱스 0에서 시작합니다.