Abstract:
A method and apparatus for monitoring the performance characteristics of a multithreaded processor executing instructions from two or more threads simultaneously. Event detectors detect the occurrence of specific processor events during the execution of instructions from threads of a multithreaded processor. Specialized event select control registers are programmed to control the selection, masking and qualifying of events to be monitored. Events are qualified according to their thread ID and thread current privilege level (CPL). Each event that is qualified is counted by one of several programmable event counters that keep track of all processor events being monitored. The contents of the event counters can then be accessed and sampled via a program instruction.
Abstract:
2 이상의 스레드로부터의 명령어를 동시에 실행하는 다중 스레드 프로세서(10)의 성능 특성을 모니터하는 방법과 장치가 개시된다. 이벤트 검출기는 다중 스레드 프로세서의 스레드들로부터의 명령어의 실행 중에 특정 프로세서 이벤트(20)의 발생을 검출한다. 특수 이벤트 선택 제어 레지스터(30)는 모니터될 이벤트의 선택, 마스킹 및 자격부여를 제어하도록 프로그램된다. 이벤트는 그들의 스레드 ID와 스레드 현재 특권 레벨(CPL)에 따라서 자격이 부여된다. 자격이 부여된 각 이벤트는 모니터되고 있는 모든 프로세서 이벤트를 기억하는 몇 개의 프로그래머블 이벤트 카운터(70) 중 하나에 의해 카운트된다. 그런 다음에, 이벤트 카운트의 내용은 프로그램 명령을 통해 액세스되고 샘플링될 수 있다.