Self-tuning is a new clocking methodology borrowing heavily from both the synchronous and self-timed disciplines. A self-tuned system has an adjustable clock and measurement logic. During the tuning process the adjustable clock is made to run faster and faster until before the system fails. After tuning and during operation each cycle is measured and, if a failure is imminent, the system is retuned. During the tuning phase test vectors-either hardware embedded or software-select near maximum speed for a particular instance of the system. As self-tuning is predicated on self-test, it is essential to build in self-test features. These same self-test features are useful in circuit level performance monitoring. Two extremes on the continuum of self-tuning are discussed: at one extreme is purely hardware self-tuning and at the other, nearly purely software. Data is given from an experimental self-tuned primary memory indicating 70 ns access time DRAM can be operated at 45 ns or less.