티스토리 뷰

출처: Always be creative - 소프트웨어 성능 평가



소프트웨어를 사용하는데 로봇에 사용되는 임베디드 보드의 성능에 따라 얼마나 소프트웨어 성능에 영향을 미치는지 확인을 하기위해 퍼포먼스 카운터라는 것을 사용해봤다. 해당 프로세스가 실행이 되면 각종 카운터에 대해서 로그를 남기고 이것으로 대략적으로나마 동일한 소프트웨어를 다른 임베디드 보드에서 실행하였을시 그 성능차이를 볼 수 있을것 같다.

사용을 하려면 '윈도우키+R'을 누른뒤에 'perfmon'이라고 입력하면 프로그램이 실행된다. 여기서 설정을 한뒤에 저장해두면, 해당 프로세스가 실행될때마다 카운터 로그가 남게 된다.

3 각종 병목 현상과 관련이 있는 카운터들

    각종 병목 현상과 관련 있는 카운터에 대한 정보는 [WWW]Bottleneck-Detection Counters 페이지를 참고하기 바란다. 

    3.1 메모리 관련 병목

      CounterDescription
      \Memory\Page Faults/sec초당 페이지 폴트 발생 횟수. 하드 폴트 및 소프트 폴트 모두를 포함한다.
      \Memory\Page Reads/sec하드 폴트를 해결하기 위해 디스크를 읽어들이는 횟수.
      \Memory\Page Writes/sec페이지 아웃을 위해 디스크에다 쓰는 횟수.
      \Memory\Pages Input/sec하드 폴트를 해결하기 위해 디스크를 읽어들이는 횟수.
      \Memory\Pages Output/sec페이지 아웃을 위해 디스크에다 쓰는 횟수.
      \Memory\Available Bytes메모리 여유분.
      \Memory\Pool Nonpaged Bytes전체 프로세스에 대한 Nopaged Pool에서의 할당량. 즉 Process(_Total )\ Pool Nonpaged Bytes의 양과 같다.
      \Process\Page Faults/sec해당 프로세스 내의 스레드에 의해 일어나는 초당 페이지 폴트의 횟수.
      \Process\Working Set해당 프로세스의 워킹 셋의 크기.
      \Process\Private Bytes현재 해당 프로세스만 사용할 수 있도록 할당된 메모리.
      \Process\Page File Bytes해당 프로세스가 사용하고 있는 페이징 파일의 크기.

    3.2 CPU 관련 병목

      CounterDescription
      \Processor\% Processor Time애플리케이션 또는 운영체제 관련 프로세스를 실행하는 데 들어간 시간의 비율. 즉 IDLE 상태의 반대.
      \System\% Total Processor Time
      \System\Processor Queue Length프로세서 큐에 들어가 있는 스레드의 갯수. 이 큐에 들어가있는 있는 스레드는 모두 ready 상태다. 즉 이 큐가 길어진다는 말은 스레드가 CPU에 비해 너무 많다는 말이다.
      \Process\% Privileged Time간단히 말해 해당 프로세스가 시스템 콜에 사용한 시간의 비율.
      \Process\% Processor Time해당 프로세스가 자신의 코드를 실행하는데 사용한 시간의 비율.
      \Process\% User Time해당 프로세스가 User Mode에서 동작한 시간의 비율. 즉 시스템 콜을 제외하고, 자신의 코드를 실행하는데 사용한 시간의 비율.
      \Process\Priority Base해당 프로세스의 우선 순위.
      \Thread\% Privileged Time간단히 말해 해당 스레드가 시스템 콜에 사용한 시간의 비율.
      \Thread\% Processor Time해당 스레드가 자신의 코드를 실행하는데 사용한 시간의 비율.
      \Thread\% User Time해당 스레드가 User Mode에서 동작한 시간의 비율. 즉 시스템 콜을 제외하고, 자신의 코드를 실행하는데 사용한 시간의 비율.
      \Thread\Context Switches/sec해당 스레드가 콘텍스트 스위칭을 일으킨 횟수.
      \Thread\Priority Base스레드의 원래 우선 순위.
      \Thread\Priority Current스레드의 현재 우선 순위.
      \Thread\Thread State스레드의 상태. 0 - Initialized, 1 - Ready, 2 - Running, 3 - Standby, 4 - Terminated, 5 - Waiting, 6 - Transition, 7 - Unknown

    3.3 디스크 관련 병목

      CounterDescription
      \PhysicalDisk\% Disk Time해당 디스크가 읽기/쓰기 작업을 수행한 시간의 비율. 즉 IDLE하지 않았던 시간의 비율.
      \PhysicalDisk\Avg. Disk Queue Length해당 디스크 큐에 들어간 읽기/쓰기 작업의 평균 갯수.
      \PhysicalDisk\Current Disk Queue Length현재 디스크 큐에 들어가있는 IO 요청 갯수.
      \PhysicalDisk\Avg. Disk Sec/Read디스크에서 데이터를 읽어들이는데 걸린 평균 시간.
      \PhysicalDisk\Avg. Disk Sec/Write디스크에다 데이터를 쓰는데 걸린 평균 시간.
      \PhysicalDisk\Disk Read Bytes/sec읽기 작업을 하는 동안 초당 전송된 데이터의 크기.
      \PhysicalDisk\Disk Write Bytes/sec쓰기 작업을 하는 동안 초당 전송된 데이터의 크기.
      \PhysicalDisk\Avg. Disk Bytes/Read읽기 작업을 하는 동안 전송된 데이터의 평균.
      \PhysicalDisk\Avg. Disk Bytes/Write쓰기 작업을 하는 동안 전송된 데이터의 평균..
      \PhysicalDisk\Disk Reads/sec디스크에 요청된 작업 중에 읽기의 비율.
      \PhysicalDisk\Disk Writes/sec디스크에 요청된 작업 중에 쓰기의 비율.

    3.4 캐시 관련 병목

      CounterDescription
      \Memory\Cache Bytes현재 사용중인 모든 캐쉬 메모리의 총합.
      \Memory\Cache Faults/sec초당 캐쉬 폴트의 발생 횟수.
      \Memory\Page Faults/sec초당 페이지 폴트 발생 횟수. 하드 폴트 및 소프트 폴트 모두를 포함한다.
      \Memory\Pages Input/sec하드 폴트를 해결하기 위해 디스크를 읽어들이는 횟수.
      \Memory\Pages Output/sec페이지 아웃을 위해 디스크에다 쓰는 횟수.
      \Cache\Copy Reads/secShows the rate at which read operations from pages of the file system cache involve a copy read.
      \Cache\Data Flushes/secShows the rate at which the file system cache has flushed its contents to disk in response to a request to flush or to satisfy a write-through file write request.
      \Cache\Copy Read Hits %Shows the percentage of cache copy read requests that did not require a disk read to access the page in the cache. A copy read is a file read operation that is satisfied by a memory copy from a page in the cache to the application's buffer. The LAN redirector uses this method for retrieving information from the cache, as does the LAN server for small transfers. This method is also used by the disk file systems.
      \Cache\Lazy Write Pages/secShows the rate at which the Lazy Writer thread has written to disk.
      \Cache\Lazy Write Flushes/secShows the rate at which the Lazy Writer thread writes to disk.
      \Cache\Read Aheads/secShows the rate at which read operations from the file system cache detect sequential access to a file. The read aheads permit the data to be transferred in larger blocks than those being requested by the application, reducing the overhead per access.
      \PhysicalDisk\Disk Reads/sec디스크에 요청된 작업 중에 읽기의 비율.
      \PhysicalDisk\Disk Writes/sec디스크에 요청된 작업 중에 쓰기의 비율.

    3.5 다중 CPU 머신에서의 병목

      CounterDescription
      \System\% Total Processor Time
      \System\Processor Queue Length프로세서 큐에 들어가 있는 스레드의 갯수. 이 큐에 들어가있는 있는 스레드는 모두 ready 상태다. 즉 이 큐가 길어진다는 말은 스레드가 CPU에 비해 너무 많다는 말이다.
      \Processor\% Processor Time애플리케이션 또는 운영체제 관련 프로세스를 실행하는 데 들어간 시간의 비율. 즉 IDLE 상태의 반대.
      \Process\% Processor Time해당 프로세스가 자신의 코드를 실행하는데 사용한 시간의 비율.
      \Thread\% Processor Time해당 스레드가 자신의 코드를 실행하는데 사용한 시간의 비율.

    3.6 네트워크 관련 병목

      CounterDescription
      \Network Interface\Bytes Total/sec해당 네트워크 인터페이스를 통해 초당 읽고 쓴 데이터의 크기.
      \Network Interface\Bytes Sent/sec해당 네트워크 인터페이스를 통해 초당 읽은 데이터의 크기.
      \Network Interface\Bytes Received/sec해당 네크워크 인터페이스를 통해 초당 쓴 데이터의 크기.
      \Protocol_layer_object\Segments Received/sec현재 연결된 연결을 통해 받은 세그먼트의 갯수.
      \Protocol_layer_object\Segments Sent/sec현재 연결된 연결을 통해 쓴 세그먼트의 갯수. 재전송 데이터만 들어간 세그먼트는 제외.
      \Protocol_layer_object\Frames Sent/sec
      \Protocol_layer_object\Frames Received/sec
      \Server\Bytes Total/sec해당 서버가 네트워크를 통해 읽거나 쓴 데이터의 크기.
      \Server\Bytes Received/sec해당 서버가 네트워크를 통해 읽은 데이터의 크기.
      \Server\Bytes Transmitted/sec해당 서버가 네트워크를 통해 쓴 데이터의 크기.
      \Network Segment\% Network Utilization

       <!> Protocol_layer_object 항목은 TCP, UDP 등을 말한다.


'WEB TIP > Windows Server' 카테고리의 다른 글

ASP.NET 성능카운터  (0) 2013.12.31
Visual Log Parser 사용법  (0) 2009.06.23
Metabase.xml 수정 (파일업로드&다운로드)  (0) 2009.04.21
Windows XP 서비스 완벽 가이드  (0) 2008.10.28
Active Directory 연결  (0) 2007.01.23
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함