Patent Number: 
Section: claims

1. A method for performance monitoring in a multiprocessing system, the method comprising:counting occurrences of a first hardware event in a first hardware event counter of a processor;counting occurrences of a second hardware event in a second hardware event counter of the processor;sampling the second hardware event counter after a specified number of occurrences of the first hardware event have been counted, and resetting the first and second hardware event counters, wherein a value corresponding to the sampled second hardware event is to be stored in a storage device, wherein both the first hardware event counter and the second hardware event counter of the processor are to be utilized for a particular process and/or thread without including contamination from events captured from other processes and/or threads. 2. The method of claim 1 wherein said first hardware event is a descriptor table load event. 3. The method of claim 2 wherein said first hardware event is a local descriptor table load event. 4. The method of claim 1 wherein said first hardware event is a segment register load event. 5. The method of claim 1 wherein said first hardware event is a memory load event from an address predetermined to trigger the sampling of the second hardware event counter. 6. The method of claim 1 wherein said first hardware event is a process identifier change event. 7. The method of claim 1 further comprising:recording the sampled second hardware event counter value with a process identifier value. 8. The method of claim 1 wherein said first hardware event is a thread identifier change event. 9. The method of claim 1 further comprising:recording the sampled second hardware event counter value with a thread identifier value. 10. A method for performance monitoring in a multiprocessing system, the method comprising:counting occurrences of a segment register load event in a first hardware event counter of a processor;counting occurrences of a second hardware event in a second hardware event counter of the processor;sampling the second hardware event counter after a specified number of occurrences of the segment register load event have been counted, and resetting the first and second hardware event counters, wherein a value corresponding to the sampled second hardware event is to be stored in a storage device, wherein both the first hardware event counter and the second hardware event counter of the processor are to be utilized for a particular process and/or thread without including contamination from events captured from other processes and/or threads. 11. The method of claim 10 further comprising:recording the sampled second hardware event counter value with a process identifier value. 12. The method of claim 11 further comprising:recording the sampled second hardware event counter value and the process identifier value with a thread identifier value. 13. An article of manufacture for performance monitoring in a multiprocessing system, the article comprising:a machine-accessible medium including data and instructions for performing context switch sampling such that, when accessed by a machine, cause the machine to:count occurrences of a first hardware event in a first hardware event counter;count occurrences of a second hardware event in a second hardware event counter;sample the second hardware event counter after a specified number of occurrences of the first hardware event have been counted, and reset the first and second hardware event counters, wherein both the first hardware event counter and the second hardware event counter of the processor are to be utilized for a particular process and/or thread without including contamination from events captured from other processes and/or threads. 14. The article of claim 13 wherein said first hardware event is a descriptor table load event. 15. The article of claim 14 wherein said first hardware event is a local descriptor table load event. 16. The article of claim 13 wherein said first hardware event is a segment register load event. 17. The article of claim 13 wherein said first hardware event is a memory load event from an address predetermined to trigger the sampling of the second hardware event counter. 18. The article of claim 13 wherein said first hardware event is a process identifier change event. 19. The article of claim 13, said machine-accessible medium including data and instructions such that, when accessed by the machine, causes the machine to:recording the sampled second hardware event counter value with a process identifier value. 20. The article of claim 13 wherein said first hardware event is a thread identifier change event. 21. The article of claim 13, said machine-accessible medium including data and instructions such that, when accessed by the machine, causes the machine to:recording the sampled second hardware event counter value with a thread identifier value. 22. A computing system comprising:an addressable memory to store data and machine executable instructions for performing context switch sampling;a processor including a first hardware event counter and a second hardware event counter, and being coupled with the addressable memory to access said machine executable instructions, wherein responsive to said machine executable instructions, said processor is to:count occurrences of a segment register load event in the first hardware event counter;count occurrences of a second hardware event in the second hardware event counter;sample the second hardware event counter after a specified number of occurrences of the first hardware event have been counted, and reset the first and second hardware event counters, wherein both the first hardware event counter and the second hardware event counter of the processor are to be utilized for a particular process and/or thread without including contamination from events captured from other processes and/or threads. 23. The computing system of claim 22 wherein responsive to said machine executable instructions, said processor is to:record the sampled second hardware event counter value with a process identifier value. 24. The method of claim 23 wherein responsive to said machine executable instructions, said processor is to:record the sampled second hardware event counter value and the process identifier value with a thread identifier value. 25. A computing system comprising:an addressable memory to store data and machine executable instructions for performing context switch sampling;a processor including a first hardware event counter and a second hardware event counter, and being coupled with the addressable memory to access said machine executable instructions, wherein responsive to said machine executable instructions, said processor is to:count occurrences of a first hardware event in the first hardware event counter;count occurrences of a second hardware event in the second hardware event counter;sample the second hardware event counter after a specified number of occurrences of the first hardware event have been counted, and reset the first and second hardware event counters, wherein both the first hardware event counter and the second hardware event counter of the processor are to be utilized for a particular process and/or thread without including contamination from events captured from other processes and/or threads. 26. The computing system of claim 25 wherein responsive to said machine executable instructions, said processor is to:record the sampled second hardware event counter value with a process identifier value. 27. The computing system of claim 25 wherein responsive to said machine executable instructions, said processor is to:record the sampled second hardware event counter value with a thread identifier value. 28. The computing system of claim 25 wherein said first hardware event is a descriptor table load event. 29. The computing system of claim 28 wherein said first hardware event is a local descriptor table load event. 30. The computing system of claim 25 wherein said first hardware event is a segment register load event. 31. The computing system of claim 25 wherein said first hardware event is a memory load event from an address predetermined to trigger the sampling of the second hardware event counter. 32. The computing system of claim 25 wherein said first hardware event is a process identifier change event. 33. The computing system of claim 25 wherein said first hardware event is a thread identifier change event.