1. A method for monitoring performance of a computer system, the method comprising: inserting one or more hardware probes in at least one processing unit, wherein the hardware probes are configured to generate probe signals in response to detecting predetermined processing events; configuring a hardware-based device to: receive the probe signals from the hardware probes; store probe event messages for the received probe signals in an event memory in the hardware-based device; transfer the probe event messages from the event memory to a memory external to the hardware-based device via a first-in-first-out buffer; provide feedback to the hardware-based thread trace device wherein the feedback includes a current measure of accesses to the memory external to the hardware based device; and regulate a frequency of the transfer of the probe event messages from the event memory based on the feedback.