yashsingh1/xdaforums huggingface dataset:
[Galaxy S II General] Aidan.Collard:
Any idea where I could download Siyah Kernel v2.5.x or earlier or get compatible ftdi_sio.ko and usbserial.ko modules for v2.6.x?
[Galaxy S II General] pekass:
search here gokhanmoral.com
[Galaxy S II General] Aidan.Collard:
I have - unfortunately all the older versions of the kernel have been deleted...

(but thanks anyway)
[Galaxy S II General] sag7392:
@Droidphile

Thanks for adding in the interactive tweaks...that was quick!

The only problem for me, is that only 2 of the tweaks work for the kernel I use (Tiamat v3.3.7 +SBC). But, it's all good...all the conservative tweaks (performance) worked and my EVO is blazing fast with still good battery life. So thanks again!
[Galaxy S II General] droidphile:
Everyone, I have reorganized posts because mods gave me two more posts extra. I was running out of space.

Do not wonder where did the 4th and 5th posts come from!! :)
[Galaxy S II General] droidphile:
1) I believe scsi_wait_scan.ko is not loaded by kernel automatically during boot time.

2) If you don't use fm radio and logging functionalities, you can disable them by putting these two lines in one of your init.d script.

rmmod si4709_driver.ko

rmmod logger.ko

Renaming to .bak is not recommended.

3) To quicken boot times, you can use Rescan Media app from market and disable media scanner using that. On every boot, media scanning takes quite a bit of time so disabling it will prevent it from running on boot. Whenever you want to run media scanning manually, you can use the app.

Older versions of Siyah were removed because of a bug where worker threads of interactive based governors will not stop even when switched to another governor. When Gokhan solved it, he removed all previous versions that had the bug.

Requesting in Siyah thread would be the best option to get those modules.
[Galaxy S II General] carlos67:
Thanks Droidphile, tried Rescan Media app (root) and it works a treat. No more waiting for 20 seconds after boot up for scanning. By the way, fantastic opening post, very informative. It's guys like you that enable the rest of us to keep on learning. Respect man. :cool:
[Galaxy S II General] ronalzhe:
guys, I have a question about ondemand and smartassV2. Let's say I am playing Angrybirds, when I choose ondemand governor, the frequency is on 500Mhz.But the frequency is on 1200Mhz when I choose smartassV2. Does that mean more battery are using on smartassV2?
[Galaxy S II General] Hrithan2020:
Yes. Generally, it seems that the smartassv2 consumes more battery and is, in some ways smoother when screen is on. When off, it is supposed to be way more conservative in ranking up the frequency and thus minimize the battery drain.
[Galaxy S II General] ronalzhe:
Thanks for your help. I just feel smartassv2 will use more battery when gaming.
[Galaxy S II General] Aidan.Collard:
Thanks droidphile - I will post a request there

---------- Post added at 09:29 AM ---------- Previous post was at 09:10 AM ----------

Aghhhhhhhhhhhh!

I can't post on a developer thread (too much of a noobie...)

Anyone mind posting a request for me - either for a v2.5.x link or for versions of usbserial.ko and ftdi_sio.ko compatible with the latest version...
[Galaxy S II General] droidphile:
If you're familiar with compiling modules, you can do so from Siyah sources.

You can find ftdi_sio and usbserial under /drivers/usb/serial in the source. Use menuconfig and build.sh to build.

I've already requested Gokhan to include those two modules from next release and he agreed. So from 2.6.13, you will probably have those two. He thought nobody uses USB serial devices so he had removed the modules.
[Galaxy S II General] Aidan.Collard:
Thanks once again droidphile.
[Galaxy S II General] iGio90:
very nice work! +1 thanks
[Galaxy S II General] headsmash82:
Awesome

I am slowly learning this stuff and this is the kind of thread that really helps the beginners
[Galaxy S II General] .c0dy:
I do not really know anymore how i just found this thread. But I'm really happy about it. It really helped me a lot and I'm going to try some other governors and tweaks to make my ICS TH15 even more smoother and faster at all xP I'm a smoothaholic haha. Thanks again!
[Galaxy S II General] androidkid311:
F*** me this is what u call a well detailed thread. Everyone i nean everyone should know this thread exsits! I cant thank you enough :D.

looks like an iphone but powered by android baby!!!!
[Galaxy S II General] .c0dy:
Hey ho, it's me again.

Just a little question - might be a stupid one :D.

The values for the tweaks. They are not fixed to the Galaxy I9100, right?

Greez

.c0dy
[Galaxy S II General] droidphile:
The values are according to steps in i9100 using Siyah kernel which are 8 steps: 100 to 1600. For other devices, change values accordingly.
[Galaxy S II General] .c0dy:
So, whats my way to make it fit to my I9000?

Does it depend on my min. and max. frequency?

I wonder (you said) where do you "use" these 8 steps?

For example the "70", "40000", "2" and "15" from the performance-part of the Ondemand-Tweaks.

My CPU-Steps are 102 (100) - 204 (200) - 408 (bla ;)) - 816 - 1020 - 1224 - 1326 - 1428.

So, whats the way to "fit" the tweaks to my steppings?

Or have I misunderstood something?

Then nvm and sorry^^
[Galaxy S II General] droidphile:
Oh you were referring to governor tweaks.

You can use those ondemand tweaks as it is. Just scale min & max frequencies accordingly. Just in case, make sure sampling_down_factor and down_differential exist under /sys/devices/system/cpu/cpufreq/ondemand when active governor is ondemand.
[Galaxy S II General] .c0dy:
Ah okay. Thank you very much :)

I already ran the Tweaks via Script Manager and via ADB too.

I got an error because there is no "down_differential".

I thought this whouldn't affect the progress.

I used the Thunderbolt-Tweaks from pikachu01 when I've been still on Gingerbread. There were some errors too and the topic said something like "don't worry about some errors."

So I guess I only need to create a "blank" file named "down_differential" and enter the value that I want, right?

Or does it depend on the Kernel? That the Kernel might not support this "down_differential"?

Thanks again :)
[Galaxy S II General] keji13:
Wow very useful thanks so much really appreciate it
[Galaxy S II General] droidphile:
down_differential is a variable/parameter defined in ondemand governor code. If you don't have the file under ondemand directory, it means it's only set at kernel level and is not configurable from user space.

Creating blank file and echoing values will not work.

Request the kernel dev to include ondemand with configurable down_differential or tweak available parameters and make the most of them :)

Errors in thunderbolt! might have appeared when you ran sqlite db optimize script. There's nothing to worry about of the errors that say "malfunction" and such.
[Galaxy S II General] 1visuaL:
nice work very helpful!
[Galaxy S II General] Faleira:
Thanks, very useful!
[Galaxy S II General] eh_hk:
My computer have fast usb charging function,it stated that it can provide 1500ma current, can I set the usb charge current higher?
[Galaxy S II General] droidphile:
The limit should be 1000mA for any charger to safeguard the battery. And it's recommended not to increase USB current above 450. 1500 sounds scary.
[Galaxy S II General] fergie716:
@OP Thank you so much for this post!

I have been trying to get an init.d script working for smartassv2 gov, using your battery suggestions for smartassv2

I have tried multiple times to get it to work properly.. Here's what the script looks like

#!/system/bin/sh

echo "500000" > /sys/devices/system/cpu/cpufreq/smartass/awake_ideal_freq
echo "200000" > /sys/devices/system/cpu/cpufreq/smartass/sleep_ideal_freq
echo "500000" > /sys/devices/system/cpu/cpufreq/smartass/sleep_wakeup_freq
echo "85" > /sys/devices/system/cpu/cpufreq/smartass/max_cpu_load
echo "70" > /sys/devices/system/cpu/cpufreq/smartass/min_cpu_load
echo "200000" > /sys/devices/system/cpu/cpufreq/smartass/ramp_up_step
echo "200000" > /sys/devices/system/cpu/cpufreq/smartass/ramp_down_step
echo "48000" > /sys/devices/system/cpu/cpufreq/smartass/up_rate_us
echo "49000" > /sys/devices/system/cpu/cpufreq/smartass/down_rate_us

I don't have any extension, just a regular file (not a .txt or .sh)

Anyway I've named it 99smartassv2, copy/paste it to /etc/init.d/ and change permissions as such

Now, when I was on CM9 ICS based ROM, SOME of the tweaks were implemented (awake_idle_freq and sleep_idle_freq). I also got no errors when running it with Script Manager

Now I am on MIUI GB (with ini.d support) and I've done the same process, but now every tweak in the script comes back with "directory nonexistent"

So next I tried to make a flashable, pushing it to /system/etc/init.d/

I think this is my best shot, but I don't think I had the set correct permissions in updater-script

set_perm(0, 0, 0777, "/system/etc/init.d/99smartassv2");

I have to be doing something wrong here lol.. I have a Nexus S 4G btw

Any insight is appreciated! And again, thank you for this thread!

EDIT:

I'm sorry, I ended up changing this

#!/system/bin/sh

To this

#! /sys/bin/sh

And was able to run the script with ROM Toolbox, still have to check and see if I have those permissions right tho. If not, I can just have ROM Toolbox run the script @ boot
[Galaxy S II General] betoNL:
Subscribing and pressing thanks button:)
[Galaxy S II General] wheeqo:
Is it safe install both SetCPU app with No-frills app? If I set multi profiles on SetCPU will they overridden by No-frills configuration?
[Galaxy S II General] droidphile:
You can use voltage control, setcpu and nofrills at the same time.

No frills does not support profiles i believe. So if you're using no frills only to set I/O scheduler, best is to use a script for setting i/o scheduler and setcpu for OC/UV/Profiles.

However order of executing is as follows.

1) Voltage Control settings/Your own script

2) SetCpu and No frills.
[Galaxy S II General] betoNL:
Wow...I have to spend more time to read those very usefull first posts of this thread....

By the way, there is a very interesting app, that allow users to tweak those not weird governors on very user-friendly manner, specially for the noobs like me: System Tuner app.

@ OP:

Do you own a GNote as well?

I dont own a sgs2 and I am glad I found this thread ;)
[Galaxy S II General] droidphile:
I don't own a gnote. Just the phenomenal GS2 as of now. Waiting for GS3 :)
[Galaxy S II General] taras.if.ua:
Very good! Thanks!
[Galaxy S II General] Fenvarien:
This guide is really helpful and makes a very good reading. Thanks!

... tapatalked
[Galaxy S II General] wheeqo:
You're right, I only use no-frills for I/O schedule then use setCPU for profile.
[Galaxy S II General] rabidtongue:
Extensive Guide!

Very well structured guide sir!Lots of info and knowledge here...

For now i opt to use Voltage Control to set my Governor and I/O scheduler...

Currently on Interactive and Noop as they are the ones available for my kernel...

Will monitor performance and hopefully give feedback...

Thanks!
[Galaxy S II General] fragargon:
hi droidphile,

very well guide, reading and learn a lot of stuff around it.

aiming to build a little script based on your guide.

do you mind me some point regarding structurating the file to put into init.d

a try and search a while trying understand why it wasn t working...

finaly got it and quiet simple... mostly rom'structure.

with my rom I have to begin the file with

#!/xbin/busybox sh

so busybox is symlinked from bin to xbin... :)

this is only a lil feedback, dunno if others could meet same work around about it.

It doesn't depreciate the guide you have written for noobs like me... without this i would never looking such thing

once again thanks so much for writtin' a such structural guide dude, it s really appreciate. :)
[Galaxy S II General] droidphile:
I actually have one under sbin (installed by Siyah) and one under system/xbin (installed by busybox installer). :)

GS2 roms will mostly have busybox in either one of these locations. I will update the init.d guide anyway.
[Galaxy S II General] coloxim:
5) Deepsleep Levels

#Set deep sleep frequency & bus speed (L4=800 mhz and 0=400mhz bus speed)

echo "4" > /sys/devices/system/cpu/cpu0/cpufreq/deepsleep_cpulevel

echo "0" > /sys/devices/system/cpu/cpu0/cpufreq/deepsleep_buslevel

this line what does it do exactly?
[Galaxy S II General] frenccw:
This guide is fantastic and well worth the read. I've got a question though, which i hope anyone can answer. The ROM that i use is unresponsive when coming out from sleep condition, so is the governor responsible for this? or the i/o scheduler? (or both? none?)
[Galaxy S II General] York666:
=D TESTING
[Galaxy S II General] lifeofcoding:
i wanted to say thanks, don't have a galaxy s, but this explanation of governors really helps
[Galaxy S II General] droidphile:
It means CPU is statically set to 800 mhz with 400 mhz bus frequency just before entering deep sleep. Deep sleep uses a different freq altogether and CPU is not clocked up or down during deep sleep.

It has to be the governor. One among Wrong combo for profile governors/very low lowest step/very low voltage for lowest steps/very low sleep-entering frequency could be the reason.

Change settings accordingly.
[Galaxy S II General] dodge3003:
A lot of this flew right over me but many thanks for your great effort my friend :-)
[Galaxy S II General] betoNL:
Noobish question.....(Noob alert :rolleyes:)

Since these tweaks are based on the sgsII, I wonder if I can apply some of them on the GNote, for instance :

The GNote got 6 frequency levels : 200MHz - 500MHz - 800MHz - 1000MHz - 1200MHz - 1400MHz (by the way I set minimum freq. to 500MHz, 200MHz is not being used and with good results !)

Chipset	Exynos

CPU	Dual-core 1.4 GHz ARM Cortex-A9

GPU	Mali-400MP

I want to tweak both ondemand ( for performance) and conservative (for battery - since I can adjust screen-off behavior with SystemTuner app)

Any hints? Thanks in advance :)

.
[Galaxy S II General] 1dog:
delete
[Galaxy S II General] droidphile:
Yes you can. Before doing so, just make sure all parameters exist under the governor directory.
[Galaxy S II General] coloxim:
Thank you so much ...

Last question..in smartassv2 governor, "ramp up/down step", let me to jump frequencies? Sorry for my English I didn't undastant...is like "pump up/down step" in luzactive?

and in siryah kernel is possible change the int voltages?

I didn't find thnem...

thanks...thank you so much...
[Galaxy S II General] droidphile:
It's not exactly like pump_up/pump_down in lulzactive because those two params defines Nth step above or below to be scaled up/scaled down to. But ramp_up_step/ramp_down_step defines the freq gap to consider when current frequency is above or below awake_ideal or sleep_ideal freqs. If values are 0, this is ignored and scaling decisions are made depending on the load.

Since Tegrak OC app is compatible with Siyah, you can change internal voltages using that. However, changing internal voltage is not recommended. Even under volting core voltage can not bring in any significant power savings. Best is to tweak governor accordingly and reduce scaling max freq to 800 or 1000.
[Galaxy S II General] coloxim:
Don't be angry..but can you make a little example about ramp up/down?

I'm not sure understand cery well..

Sorry..anyway thank for your attention...

much appreciate..

Inviato dal mio GT-I9100 usando Tapatalk
[Galaxy S II General] droidphile:
This is how roughly smartassV2 works. There are more details to it, however:

:WAKE:

When device wakes up, it first ramp up rapidly/directly to awake_ideal_freq without considering current load or sampling interval. Now it is made sure that frequency stays at ideal freq at least for up_rate_us microseconds. On next sampling (sampling is not done at every sampling interval, but by counting idle cycles, if CPU is not idle for some time, governor assumes CPU is loaded and scales up depending on the load) ramp_up_step is used as measure of increase in frequency as current freq+ramp_up_step. If resultant frequency is not a valid value in UvmV table, it is rounded up to a valid frequency. Suppose current frequency = 500mhz and ramp_up_step = 200000 then next frequency to be scaled up to (when load > max_cpu_load) is calculated as 500+200=700 which is rounded to 800 since 700 is an invalid freq for gs2. If ramp_up_step=0, then governor jumps cpu to scaling max frequency.

:SUSPEND:

When device suspends (screen off), frequency is rapidly scaled down to sleep_ideal_freq first. Frequency stays at this ideal frequency atleast for down_rate_us microseconds. Next time load is checked and if found to be less than min_cpu_load, new frequency to be scaled down to is calculated as current freq-ramp_down_step. Resultant value is rounded off to a valid value. If ramp_up_step was set to 0, the new frequency is calculated as current freq*(current load/max_cpu_load). If current frequency is 800, min_cpu_load=40, max_cpu_load=80 then new frequency (if load less than min_cpu_load) is calculated as 800*(0.4/0.8) = 400mhz.

In short, the two ramp steps params are considered only when current freq is above ideal frequency during screen-on state and below ideal frequency during screen-off state for non-zero values.
[Galaxy S II General] coloxim:
really thanks!!!

thank you so much..

;)
[Galaxy S II General] aLNG:
Droidphile, what if the ideal freq is not round to freq tables values? Like original erasmux setting, will that also round up?
[Galaxy S II General] droidphile:
My guess is, they will be rounded off by CPU driver. But if ideal frequencies are beyond the limits of min & max scaling frequencies, they're reset to scaling max or scaling min.

Anyways, kernel devs will modify governor to have valid init values for all governor parameters. We only need to make sure user set params values are valid.
[Galaxy S II General] vonton420:
Is a big :)help to me !!!
[Galaxy S II General] maurogg84:
In my kernel the ondemand governor had two settings that

I don't know how to set up for performance, the power save bias, and ignore nice load. Do you think messing with those settings will improve performance for the governor?

Edit: ok I read what power save bias is about, but you don't cover ignore nice load.

Eclipse 1.3 ROM

V6 Supercharged!
[Galaxy S II General] droidphile:
I didn't cover those two as they're not so important. Powersave bias as you know has default zero and setting higher values biases governor towards lower frequencies.

Ignore nice load has default zero and if set to 1 will ignore "nice processes" during scaling up/down. Nice processes are used by the IO scheduler to refer as low-priority processes. Load caused by nice processes are not taken into account to make scaling decisions if param is set to 1.
[Galaxy S II General] maurogg84:
Thanks for replying, I understand now.

Eclipse 1.3 ROM

V6 Supercharged!
[Galaxy S II General] sianzb0i:
I tried those on my own when i was on cf kernel. Its in a sense very "hard" to tweak cos its hard to find the best mix of performance and power savings. End up i changed back to default cos it didnt help much and hindered some performance so i PERSONALLY felt its no point
[Galaxy S II General] maurogg84:
I created a script to tweak the smartass v2 governor, but the script manager would never get a exit code 0, It just keeps running. I was able to change ondemand and interactive parameters, but there was no way to change smartass. Do you have any idea what might be causing this problem?

Eclipse 1.3 ROM

V6 Supercharged!
[Galaxy S II General] droidphile:
I need more info. What device and kernel. Also if you post the script, i'd know what's going on.
[Galaxy S II General] maurogg84:
I have a Droid Charge and the kernel I'm using is imnuts peanutbutterjelly 0130, and the script is:

#!/system/bin/sh

echo "800000" > /sys/devices/system/cpu/cpufreq/smartass/awake_ideal_freq;

echo "200000" > /sys/devices/system/cpu/cpufreq/smartass/sleep_ideal_freq;

echo "800000" > /sys/devices/system/cpu/cpufreq/smartass/sleep_wakeup_freq

echo "75" > /sys/devices/system/cpu/cpufreq/smartass/max_cpu_load;

echo "45" > /sys/devices/system/cpu/cpufreq/smartass/min_cpu_load;

echo "0" > /sys/devices/system/cpu/cpufreq/smartass/ramp_up_step;

echo "0" > /sys/devices/system/cpu/cpufreq/smartass/ramp_down_step;

echo "24000" > /sys/devices/system/cpu/cpufreq/smartass/up_rate_us

echo "99000" > /sys/devices/system/cpu/cpufreq/smartass/down_rate_us

Eclipse 1.3 ROM

V6 Supercharged!
[Galaxy S II General] droidphile:
1) Active governor should be smartassv2 to tweak the governor. Else, the directory "smartass" will not exist.

2) I hope the frequencies you're using is supported by kernel and device.

3) Using Root Explorer, make sure all the 9 params exist under /sys/devices/system/cpu/cpufreq/smartass/

4) You can delete all the semi colons at the end.

5) As an alternative try a different shell

#!/system/xbin/busybox sh OR

#!/sbin/busybox sh OR

wherever busybox resides.
[Galaxy S II General] maurogg84:
Thanks for the response, when i did it I was sure that smartass v2 was on. This are the levels for my kernel that I have on, 1400, 1300, 1200, 1000, 800, 400, 200, 100 mhz. I did the changes you mentioned but still didn't work. All the files I'm changing are in the smartass folder, there are two extra files debug_mask and sample_rate_jiffies, I think you don't cover those in the OP. Here is my new script.

#!/system/xbin/busybox sh

echo "800000" > /sys/devices/system/cpu/cpufreq/smartass/awake_ideal_freq

echo "200000" > /sys/devices/system/cpu/cpufreq/smartass/sleep_ideal_freq

echo "800000" > /sys/devices/system/cpu/cpufreq/smartass/sleep_wakeup_freq

echo "75" > /sys/devices/system/cpu/cpufreq/smartass/max_cpu_load

echo "45" > /sys/devices/system/cpu/cpufreq/smartass/min_cpu_load

echo "0" > /sys/devices/system/cpu/cpufreq/smartass/ramp_up_step

echo "0" > /sys/devices/system/cpu/cpufreq/smartass/ramp_down_step

echo "24000" > /sys/devices/system/cpu/cpufreq/smartass/up_rate_us

echo "99000" > /sys/devices/system/cpu/cpufreq/smartass/down_rate_us

Eclipse 1.3 ROM

V6 Supercharged!
[Galaxy S II General] maurogg84:
https://www.box.com/shared/r7d108msz4c5c29p7y33

Just wanted to mention the permission of the files in the smartass folder is -rw-r--r--

I ran the commands in terminal and they worked, it's weird. Also I added a screen capture of script manager when running the script, notice at the start of the second line it reads "# ec sh" or "# ce sh" with the interactive script started with only "# c sh"

Eclipse 1.3 ROM

V6 Supercharged!
[Galaxy S II General] droidphile:
@maurogg84

debug_mask is used for debugging logging information and has not effect on the governor's performance.

sample_rate_jiffies in the simplest form is the sampling rate. Smartassv2 is an interactive based governor. Interactive based governors does not sample the load at every polling interval unlike ondemand based governors. Idle loop concept is used by interactive based governors to measure idle time as cycles and thus make scaling decisions. When appropriate, a timer is set by idle loop to sample the load. This part is where sample_rate_jiffies is used.

In slightly complex form:

There is a possibility where if the cpu utlization can go from low to high between the timer expiring, delta_idle(time in idle) will be > 0 and the CPU will be 100% busy, preventing idle from running, and this timer from firing. So another timer should be setup to fire to check CPU utilization. sample_rate_jiffies is used as a param to check cpu load this time.

It's recommended not to change value of sample_rate_jiffies. Let it be the kernel default as set by the dev. That's why i didn't cover it in the OP.
[Galaxy S II General] maurogg84:
Okay, so do you have any theories why I cannot change the parameters with the script, I really wanted to use the script to use in the init folder. Thanks a lot for your help!

Eclipse 1.3 ROM

V6 Supercharged!