this.producer = producer;
this.hpm = producer;
  VM_TraceWriter(VM_HardwarePerformanceMonitor producer, int pid)   {     if(VM_HardwarePerformanceMonitors.verbose>=2) {      VM.sysWriteln("VM_TraceWriter(",pid,") constructor");    }    this.producer = producer;    this.pid      = pid;    // virtual processor that this thread wants to run on!    processorAffinity = VM_Scheduler.processors[pid];    producer.setConsumer(this);    if (VM_HardwarePerformanceMonitors.hpm_trace) {      setupCallbacks();    }    makeDaemon(true);  }