[TIP] Single/Dual/Quad Core Mode (Configurable)

Search This thread

MrPhilo

Senior Member
Dec 12, 2010
2,028
654
Sheffield
While ago I posted a reply on a thread on how to control the CPU speed and override Tegra 3 controlling it and setting it to dual core mode. I forgot to reply back on that thread, but instead I thought it would be better to create a new thread, since not much people would read it (Credit to k0rner for reminding me... (k0rner thread)

/sys/kernel/debug/tegra_hotplug/max_cpus
This is not touched by the Android OS, and will remain in whatever state we set until reboot (back to 4).

Set this to "1" will make the phone only use 1 core (Doesn't work, only 2,3,4 does)
Set this to "2" will use 2 core
Set this to "3" will use 3 core
Set this to "4" will use 4 core (default)

1) Use Root_Browser (Free) or Root Explorer
2) Go to /sys/kernel/debug/tegra_hotplug/
3) Hold max_cpus
4) 'Open With', Text Editor
5) Change Value (Default 4) to how many cores you want (ie 2 = dualcore)
6) Download Tegrastats and see the result

EDIT: http://xdaforums.com/showpost.php?p=26056320&postcount=48 (Control Core, via App, credit Meltus)

EXTRA: http://xdaforums.com/showpost.php?p=25637797&postcount=10 (credit kolargol)

2j6afwz.png
 
Last edited:

MrPhilo

Senior Member
Dec 12, 2010
2,028
654
Sheffield

JacoA

Member
Dec 25, 2010
45
10
Rotterdam
While ago I posted a reply on a thread on how to control the CPU speed and override Tegra 3 controlling it and setting it to dual core mode. I forgot to reply back on that thread, but instead I thought it would be better to create a new thread, since not much people would read it (Credit to k0rner for reminding me... (k0rner thread)

/sys/kernel/debug/tegra_hotplug/max_cpus
This is not touched by the Android OS, and will remain in whatever state we set until reboot (back to 4).

Set this to "1" will make the phone only use 1 core (Single Core Mode + Low Companion Core)
Set this to "2" will use 2 core
Set this to "3" will use 3 core
Set this to "4" will use 4 core (default)

1) Use Root_Browser (Free) or Root Explorer
2) Go to /sys/kernel/debug/tegra_hotplug/
3) Hold max_cpus
4) 'Open With', Text Editor
5) Change Value (Default 4) to how many cores you want (ie 2 = dualcore)
6) Download Tegrastats and see the result

Now enjoy your phone with less heat:)

NOTE: I will edit later on how to change clockspeed without Tegra 3 controlling it through SetCPU.

2j6afwz.png

Sorry for the obvious question, but I am orientating for buying X or S.
Is the heating problem that serious to go back to 2 cores?
 

MrPhilo

Senior Member
Dec 12, 2010
2,028
654
Sheffield
Sorry for the obvious question, but I am orientating for buying X or S.
Is the heating problem that serious to go back to 2 cores?

It is a bit of an overkill having four cores, I find than two cores is enough for me and games don't lag on it. It does get quite warm, depending what you do, alot less with two cores.

I wouldn't recommend the One S at all. I would just wait for the S3.
 

treebill

Senior Member
Jan 28, 2011
2,130
564
All good great too lol I will add that tegra stats is a massive battery drain.

Also controling the speed will be nice ill be sure to let the setcpu dev know once you let us know :)

Sent from my HTC One X using xda premium
 
Last edited:

treebill

Senior Member
Jan 28, 2011
2,130
564
It's there on leedroid have you tried adding the folder to see if it works?

Sent from my HTC One X using xda premium
 

MrPhilo

Senior Member
Dec 12, 2010
2,028
654
Sheffield
Sure you checked carefully? I've been on both Leedroid and ARHD and they do exist.

/sys/kernel/debug/tegra_hotplug
 

Rastasia

Senior Member
Apr 30, 2009
73
5
ARHD 5.X.X

Originally Posted by mike1986.
ok, my fault this time, sorry!

Open root explorer, go to system/etc/ and open init.post_boot.sh

navigate to line 115 and remove:

umount /sys/kernel/debug

save and reboot!

sorry! BTW what does it allows you to do?

---------- Post added at 08:07 PM ---------- Previous post was at 08:06 PM ----------

Flashed Leedroid and the folder is there, trick with tasker working perfectly well !

can you share wht you did?
 
  • Like
Reactions: Fruktsallad

Fruktsallad

Senior Member
May 15, 2011
712
217
Well, I flashed Leedroid too, and now I'm able to change it no problem. However it doesn't really obey my 1 CPU rule and activates a 2nd core whenever it feels it really needs it. That's ok I guess. Really smooth, though. No lag at all.

I've also played around a bit with the throttle settings in the CPU-tegra folder. It has a throttle_table where you can set individual frequency settings, but so far no matter what I set it to, it seems to throttle to 340Mhz which is slooow. :)

A reboot sets everything straight. Hopefully this'll be able to save us some sweet battery time.
 

mike1986.

Senior Member
Little bit where it all comes from:

Code:
mount debugfs debugfs /sys/kernel/debug

is inside init.endeavoru.common.rc in ramdisk

init.endeavoru.common.rc contains also following code:

Code:
    write /sys/module/cpu_tegra3/parameters/no_lp 0
    write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor ondemand
    write /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor ondemand
    write /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor ondemand
    write /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor ondemand
    chown system /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate_min
    chown system /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate
    chown system /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate_max
    chown system /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor
    chown system /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy
    chown system /sys/devices/system/cpu/cpufreq/ondemand/up_threshold
    chown system /sys/devices/system/cpu/cpufreq/ondemand/touch_poke
    chown system /sys/htc/power_save
    write /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate_min 10000
    write /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate 50000
    write /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor 4
    write /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy 1
    write /sys/devices/system/cpu/cpufreq/ondemand/up_threshold 90
    write /sys/devices/system/cpu/cpu1/online 0
    write /sys/devices/system/cpu/cpu2/online 0
    write /sys/devices/system/cpu/cpu3/online 0
    [COLOR="Red"]write /sys/kernel/debug/tegra_hotplug/max_cpus 1[/COLOR]
    write /sys/module/cpuidle/parameters/lp2_in_idle 1

So changing /sys/kernel/debug/tegra_hotplug/max_cpus is not permanent, it will be back to the default value each reboot.

Also keep in mind that /sys/kernel/debug contains details about kernel settings, I don't think that changing it can reflect in anything.

I may not be right of course, please feel free to correct me if I'm wrong :)
 

Top Liked Posts

  • There are no posts matching your filters.
  • 7
    While ago I posted a reply on a thread on how to control the CPU speed and override Tegra 3 controlling it and setting it to dual core mode. I forgot to reply back on that thread, but instead I thought it would be better to create a new thread, since not much people would read it (Credit to k0rner for reminding me... (k0rner thread)

    /sys/kernel/debug/tegra_hotplug/max_cpus
    This is not touched by the Android OS, and will remain in whatever state we set until reboot (back to 4).

    Set this to "1" will make the phone only use 1 core (Doesn't work, only 2,3,4 does)
    Set this to "2" will use 2 core
    Set this to "3" will use 3 core
    Set this to "4" will use 4 core (default)

    1) Use Root_Browser (Free) or Root Explorer
    2) Go to /sys/kernel/debug/tegra_hotplug/
    3) Hold max_cpus
    4) 'Open With', Text Editor
    5) Change Value (Default 4) to how many cores you want (ie 2 = dualcore)
    6) Download Tegrastats and see the result

    EDIT: http://xdaforums.com/showpost.php?p=26056320&postcount=48 (Control Core, via App, credit Meltus)

    EXTRA: http://xdaforums.com/showpost.php?p=25637797&postcount=10 (credit kolargol)

    2j6afwz.png
    2
    OK here you go everyone, I made a thread for it in the app section - http://xdaforums.com/showthread.php?p=26050801 :)

    Sent from my HTC One X using xda premium
    1
    ARHD 5.X.X

    Originally Posted by mike1986.
    ok, my fault this time, sorry!

    Open root explorer, go to system/etc/ and open init.post_boot.sh

    navigate to line 115 and remove:

    umount /sys/kernel/debug

    save and reboot!

    sorry! BTW what does it allows you to do?

    ---------- Post added at 08:07 PM ---------- Previous post was at 08:06 PM ----------

    Flashed Leedroid and the folder is there, trick with tasker working perfectly well !

    can you share wht you did?
    1
    I could make a little app that allows you to change the value if people want it? :)