I'm running FreeBSD 8.2-RELEASE/amd64 and I just upgraded my server to a Sandy Bridge Core i7 2600k, which out of the box runs at 3.4 GHz and turbo on 1 core to 3.8 GHz or 3.5 GHz on all 4 cores.
As I understand it, it operates by kicking in when "at 100% load". I don't know if this means the hardware detects all 4 cores or 8 threads maxed or if there is some requirement on the OS side to indicate it is "fully loaded".
What I did try was to set the turbo to a multiplier of 35 for all 4 cores, so effectively under full load it should go to 3.5 GHz on each core. I timed an ffmpeg encode which ran in 40.41 seconds according to time.
I then set the turbo multiplier on each core to 40, so effectively 4 GHz. However, timing the same ffmpeg compile, it ran in the same amount of time - 40.40 seconds.
I read in a few places that in order for this turbo thing to work, cx_lowest had to be set to C3, so I did that for all 8 logical cores, but now when I time the ffmpeg encode, it takes 62 seconds. So it's only about 65 % as fast as when cx_lowest was set to C1.
Do I need to be running powerd for the turbo to work? Or do I need to somehow tell FreeBSD to inform the CPU it's at "full load" so the turbo will kick in? If there's a guide or documentation on which loader.conf and/or sysctl.conf tunables I need to set, I'd really appreciate any insight here. I found a few mentions of turbo on some of the freebsd lists, but nothing definitive on how to properly allow turbo to work.
Thanks in advance!
As I understand it, it operates by kicking in when "at 100% load". I don't know if this means the hardware detects all 4 cores or 8 threads maxed or if there is some requirement on the OS side to indicate it is "fully loaded".
What I did try was to set the turbo to a multiplier of 35 for all 4 cores, so effectively under full load it should go to 3.5 GHz on each core. I timed an ffmpeg encode which ran in 40.41 seconds according to time.
I then set the turbo multiplier on each core to 40, so effectively 4 GHz. However, timing the same ffmpeg compile, it ran in the same amount of time - 40.40 seconds.
I read in a few places that in order for this turbo thing to work, cx_lowest had to be set to C3, so I did that for all 8 logical cores, but now when I time the ffmpeg encode, it takes 62 seconds. So it's only about 65 % as fast as when cx_lowest was set to C1.
Do I need to be running powerd for the turbo to work? Or do I need to somehow tell FreeBSD to inform the CPU it's at "full load" so the turbo will kick in? If there's a guide or documentation on which loader.conf and/or sysctl.conf tunables I need to set, I'd really appreciate any insight here. I found a few mentions of turbo on some of the freebsd lists, but nothing definitive on how to properly allow turbo to work.
Thanks in advance!