Intel pentium 4 has a cpufreq capability (p4-clockmod module) which can lower the frequency of the cpu... but what about using maximum speed when needed?
The kernel has it's own governors named "conservative", "ondemand", "powersave", "userspace" which let you dinamically change the frequency ( modules: cpufreq_conservative, cpufreq_ondemand, cpufreq_powersave, cpufreq_userspace)
cpufrequtils helps in configuring the max/min frequency and governor
cpufreq-info will give you the current governor and frequency without digging in sysfs
cpufreq-set will dinamically let you change the governor
$ cpufreq-set -g [ondemand|performance]
You can control if nice process increment cpu frequency using
/sys/devices/system/cpu/cpu0/cpufreq/ondemand/ignore_nice_load
sysfsutils helps configuring sysfs in /etc/sysfs.conf
devices/system/cpu/cpu0/cpufreq/ondemand/ignore_nice_load = 1
A useful reference is
How to make firefox faster