Real-Time 임베디드 타겟에서 CPU 및 메모리 사용 모니터링

업데이트 됨 Jul 27, 2023

환경

하드웨어

  • CompactRIO Controller

소프트웨어

  • LabVIEW Real-Time Module
  • LabVIEW Full
  • LabVIEW Professional
  • LabVIEW Professional

운영 체제

  • Windows

LabVIEW를 사용하여 주어진 시간에 CPU 로드와 Real-Time(RT) 컨트롤러에서 사용 가능한 메모리를 알고 싶습니다. 시스템의 리소스 사용을 어떻게 모니터합니까?

CPU 및 메모리 사용을 모니터링하는 다양한 옵션이 있습니다. 이것은 다른 방법을 통해 수행할 수 있습니다.

프로그래밍 방식으로 LabVIEW 2012 및 그 이상 버전:
시스템 구성 API 중 시스템 프로퍼티 노드를 사용합니다. 시스템 프로퍼티 노드를 사용하여 메모리 사용 정보를 가져옵니다. 하드웨어 프로퍼티 노드에서 메모리 및 CPU 사용 정보를 얻을 수 있습니다. 하드웨어 및 시스템 프로퍼티 노드를 사용하는 방법에 대한 더 자세한 정보는 도움말 » 예제 찾기 » Hardware Input and Output » System Configuration » Resource Monitor.vi 예제를 참조하십시오.



외부적으로 Measurement & Automation Explorer (MAX) (메모리 전용) :
  1. MAX를 여십시오. 시작 » 프로그램 » National Instruments » Measurement & Automation 을 선택하여 이 작업을 수행 할 수 있습니다.
  2. 구성 창에서 원격 시스템을 확장하십시오.
  3. Real-Time 컨트롤러를 선택하십시오.
  4. 기본 창에서 시스템 설정(System Settings) 탭을 선택하십시오. 이 탭에는 전체 디스크 공간과 디스크의 여유 공간이 포함된 총 메모리와 사용 가능한 메모리가 포함됩니다.


NI 배포된 시스템 관리자(Distributed System Manager)를 사용하여 외부에서 실행 (LabVIEW 2009 또는 이후 버전 필요) :
  1. 배포된 시스템 관리자를 엽니 다. Windows에서 시작 » 프로그램 » National Instruments » 배포된 시스템 관리자(Distributed System Manager)를 선택하거나 LabVIEW » 도구 » Distributed System Manager를 클릭하여 이 작업을 수행 할 수 있습니다.
  2. 구성 창에서 네트워크 항목을 확장하십시오.
  3. Real-Time 컨트롤러의 IP 주소를 선택하십시오.
  4. CPU/Memory(메모리) 탭을 선택하고 자동 보기에서 메모리 사용량을 봅니다.


여유 메모리 값을 보유하는 개별 공유 변수를 선택하여 사용 가능한(Available) 메모리를 볼 수도 있습니다.

참고 : NI 배포된 시스템 관리자에서 이 정보를 볼 수 없다면, NI 배포된 시스템 관리자에서 볼 수 없는 CPU 및 메모리 사용을 다음 링크에서 참조하십시오. CPU and Memory Usage Not Visible in NI Distributed System Manager 
또한, System State Publisher가 Real-Time 컨트롤러에 설치되어 있는지 확인하십시오.

Real-Time Trace Viewer를 사용하여 외부에서 :
RT 타겟에서 CPU 사용을 모니터링하는 또 다른 옵션은 Real-Time Trace Viewer 를 사용하는 것입니다. Real-Time Trace Viewer를 사용하면 메모리 할당, CPU 사용 및 스레드 예약을 볼 수있는 실행 추적을 만들 수 있습니다. Real-Time Trace Viewer 는 LabVIEW 2014 Real-Time Module 및 이후 릴리스에 포함되어 있습니다. 2014 년 이전의 LabVIEW Real-Time Module 의 출시로 Real-Time Trace Viewer 는 별도의 툴킷 (Real-Time Execution Trace Toolkit)으로 패키지되었습니다. Real-Time Trace Viewer 사용에 대한 자세한 내용은 다음 링크를 참조하십시오. Debugging Multicore Applications with the Real-Time Trace Viewer
 

Additional Information

  • LabVIEW Real-Time 컨트롤러에서 사용 가능한 메모리 양은 설치된 소프트웨어 및 사용자 어플리케이션 메모리 요구 사항을 포함한 여러 요소에 따라 다릅니다.
  • Linux Real-Time 컨트롤러의 경우 메모리 관리 및 보고가 다른 Real-Time 대상과 다릅니다. 메모리 모니터링을 구현하는 방법에 대한 정보는 다음 링크를 참조하십시오. Memory Reporting Issue with NI Linux Real Time OS Target
  • LabVIEW 2009에서 LabVIEW 2011로 작업하는 경우,  RT Get CPU Loads VI 와 RT Get Memory Usage VI를 사용하여 프로그래밍 방식으로 CPU 및 메모리 사용을 모니터링 할 수 있습니다.


  • NI 배포된 시스템 관리자 대신 LabVIEW 8.6 또는 이전 버전을 사용하는 경우 아래에 설명 된대로 Real-Time System Manager를 사용해야합니다.
LabVIEW 7.1, 8.0, 8.2.x, 8.5.x, 8.6.x :
Real-Time System Manager는 RT 타겟에서 실행중인 VI에 대한 세부 사항을 표시하고 타겟의 성능을 동적으로 표시합니다. 이것은 메모리 사용에 대한 가장 상세한 보기를 제공합니다. 자세한 정보는 링크를 참조하십시오. Archived: What is the Real-Time System Manager (RTSM) and How Do I Use It? 

LabVIEW 7.0 :
Operate » RT Engine Info를 선택하여 RT 엔진의 메모리 사용 정보를 봅니다. 총 메모리와 여유 메모리가 모두 표시됩니다.

LabVIEW 6.0.2, 6.1 :
호스트 컴퓨터의 labview.ini 파일에 다음 줄을 추가하고 LabVIEW를 다시 시작하십시오.

targetmeminfo = true

그런 다음 Operate » RT Engine Info 를 선택하여 RT 엔진의 메모리 사용량을 볼 수 있습니다.