In order to take advantage of the full potential of ubiquitous computing devices, we will need systems which minimize power consumption. \weiser\ and others have suggested that this may be accomplished in part by a CPU which dynamically changes speed and voltage, thereby saving energy by spreading run cycles into idle time. Here we continue this research, using a simulation to compare a number of policies for dynamic speed-setting. Our work clarifies a fundamental power vs.\ delay tradeoff, as well as the role of prediction and of speed-smoothing in dynamic speed-setting policies. We conclude that success seems to depend more on simple smoothing algorithms than on more sophisticated prediction techniques, but defer to the eventual replication of these results on actual multiple-speed systems.