Hello thebanker101,
This sounds like expected behavior.
The CPU reduces the frequency when it is idle in order to save power.
When the processor has sufficient work to do then it bumps up the frequency.
The reference frequency is 3.5 GHz.
In Turbo mode the frequency further increases up to 3.8 GHz.
If you want to check that the CPU is behaving properly, you can busy up the CPUs and you should see the CPU frequency jump up.
The test program you choose should be something that keeps the CPU busy long enough (like a few seconds or more) so you have time to see the change with CPU-Z.
Most programs do IO (reads and writes to disk) and IO usually has lots of idle time.
You can use the 'stream' memory benchmark to busy up your system.
A windows binary is available at
http://www.cs.virginia.edu/stream/FTP/Contrib/Intel/win32/wstream.exeDownload it and run it with the command line 'wstream.exe 3500 1000' (where 3500 is your cpu freq in MHz and 1000 is the number of iterations to run)
This will keep the cpu VERY busy for a while. CPU-Z might not even update its display until the wstream is done.
Hope this helps,
Pat