christian.perone
Posts: 8
Joined: Mon Aug 06, 2012 12:31 pm

Turbo Mode / Overclocking / SD Corruption

Thu Feb 07, 2013 1:17 pm

What are the last results on using Turbo Mode and the corruption issues ? I keep seeing SD corruption messages, is this going to be fixed ?

dom
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 5161
Joined: Wed Aug 17, 2011 7:41 pm
Location: Cambridge

Re: Turbo Mode / Overclocking / SD Corruption

Thu Feb 07, 2013 1:40 pm

Overclock is by definition running the chip out of spec, so this may not be fixable.
I believe only core_freq affects sdcard corruption, so select turbo, and then set core_freq back to 250 (or a little higher if testing is successful) and you will get most of the benefit of turbo.

christian.perone
Posts: 8
Joined: Mon Aug 06, 2012 12:31 pm

Re: Turbo Mode / Overclocking / SD Corruption

Thu Feb 07, 2013 2:29 pm

Thanks for quick reply.

zac6x9
Posts: 2
Joined: Thu May 17, 2012 10:52 pm

Re: Turbo Mode / Overclocking / SD Corruption

Thu Feb 07, 2013 2:40 pm

I have one of the early boards and this seems to corrupt the sd card with the slightest over clock.

RobHenry
Posts: 452
Joined: Fri Sep 21, 2012 9:04 pm
Location: UK

Re: Turbo Mode / Overclocking / SD Corruption

Thu Feb 07, 2013 5:35 pm

The problem goes away if you move the ext4 (linux) partition to a usb drive (thumb drive or HDD) and only use the sd card for /boot

BigEndian
Posts: 19
Joined: Tue Jun 19, 2012 6:50 pm
Location: Munich // Germany

Re: Turbo Mode / Overclocking / SD Corruption

Fri Feb 08, 2013 12:53 pm

I've made a couple of tests and in my case it seems that corruption only happens if I overvolt the cpu.

For example:

arm_freq=900
core_freq=450
sdram_freq=450
over_voltage=0

works very reliable with my pi, without any corruption on the sdcard at all.

Another example:

arm_freq=900
core_freq=333
sdram_freq=450
over_voltage=6

results in corruption of the sdcard within a day. Please note that core_freq is significantly higher on the first example but I have never seen corruptions with this configuration. Maybe it behaves different on different Pi's. I have a 256MB one with Samsung RAM.

nazouille
Posts: 28
Joined: Thu Jan 03, 2013 12:30 pm
Location: France

Re: Turbo Mode / Overclocking / SD Corruption

Fri Feb 08, 2013 1:00 pm

Whre does the 333 frequency come from?
Why this number?

Is there any rules for this frequency?

stupid_boy
Posts: 64
Joined: Tue Jan 01, 2013 7:53 pm

Re: Turbo Mode / Overclocking / SD Corruption

Fri Feb 08, 2013 1:16 pm

arm_freq = core_freq * X = sdram_freq * Y
where X and Y are integer numbers, preferably X = Y.
note that significant difference please. you may need to play with avoid_pwm_pll too.
also different overvolts leads to slightly different behaviours, you are right, but not as above calculation.
in your examples there is no 'turbo mode'.

BigEndian
Posts: 19
Joined: Tue Jun 19, 2012 6:50 pm
Location: Munich // Germany

Re: Turbo Mode / Overclocking / SD Corruption

Fri Feb 08, 2013 1:23 pm

nazouille wrote:Whre does the 333 frequency come from?
Why this number?

Is there any rules for this frequency?
I have it from the official raspbian rpi-config overclocking presets, look here:
Image
stupid_boy wrote: arm_freq = core_freq * X = sdram_freq * Y
where X and Y are integer numbers, preferably X = Y.
note that significant difference please.

I played with many settings, I just picked out two configs I had in mind. As fas as I can see, corruption always kicks in with over_volt regardless of every other setting. (At least in my case)

stupid_boy wrote:you may need to play with avoid_pwm_pll too.
also different overvolts leads to slightly different behaviours, you are right, but not as above calculation.
in your examples there is no 'turbo mode'.
On http://elinux.org/RPi_config.txt#Overcl ... figuration It states:
The GPU core, h264, v3d and isp share a PLL, therefore need to have related frequencies. ARM,
SDRAM and GPU each have their own PLLs and can have unrelated frequencies. The following is not necessary with "avoid_pwm_pll=1".

pll_freq = floor(2400 / (2 * core_freq)) * (2 * core_freq)
gpu_freq = pll_freq / [even number]

The effective gpu_freq is automatically rounded to nearest even integer, so asking for core_freq=500 and gpu_freq=300 will result in divisor of 2000/300 = 6.666 => 6 and so 333.33MHz.
therefore I don't think it matters here in which relation core, arm and sdram freqs are.

stupid_boy
Posts: 64
Joined: Tue Jan 01, 2013 7:53 pm

Re: Turbo Mode / Overclocking / SD Corruption

Fri Feb 08, 2013 2:03 pm

relation between arm, core and ram freqs are not documented anywhare. they shuld not be documented in plain form.
lets thing for a moment: both arm and core use single shared device: memory. clocks between arm/memory and core/memory must be in sync, othervice hardware will/must issue wait cycles. when you break this sync, you efectively lose any performance because of wait cycles. when you break part(s) of this 3 ( in reality more ) part equation, you add delays between more components, which are dificult/imposible to accomplish. if system need to sync 2 clocks on the same time, guess what, he can fail! when such failure occur, you are on undefined behaviour.
avoid_pwm_pll=1 is related to this problem. it tries to decouple, when it is posyble, clocks on the system. when you use it, there is no strict requirement to keep clocks in sync, but they still must be, if you wish to stay away from troubles.

all that is related only to clocks. under/over volting is different story. there are other relations. thing, arm (over_voltage) and sdram overvoltage settings...

Return to “Troubleshooting”