[Nexus 6 Android Development] Xileforce:
​

Kernel Tweaking Starter Guide (Including Colors):

If you are having issues please notify RIPng ,The Kernel Dev, on his hangouts: matthewdalex92@gmail.com

This ROM comes pre packaged with the Sensei Kernel which allows for a variety of tweaking options.

The following can be done using your favorite kernel tweaking app. I use FauxClock.

Updating The Kernel:

Before we get started, you are going to want to make sure your kernel is the latest! RIPng, the developer of Sensei Kernel, frequently releases new builds so its highly likely the kernel packaged with the ROM is out of date. First go to your settings menu, then about phone, then look at the section titled "Kernel Version". You should see something like "3.10.61 ~SENSEI.R7". R7 is the version of the kernel. Now go to the kernel thread here: http://xdaforums.com/nexus-6/development/kernel-sensei-kernel-t2956283 you will see in the title what version kernel is the current release. As of this writing it is R9 for example. To update the kernel, simply click the downloads link and find the latest version. Once downloaded just go into TWRP and flash the kernel. Do not wipe anything. You now have the latest Sensei Kernel :)

Clock Speed:

To begin I prefer to leave my max clock speed at the stock 2.649ghz, this is because I have a bin 5 CPU :(. Set min CPU as low as it can go. As of current release this is 300. For the adventurous you can try 2.88ghz. For people near or below bin 5, you will want the voltage for that frequency around 1155mVolts. If you really wanna over clock you can try 2.95ghz. Again I've found a voltage of ~1200mVolts to be sufficient for stability. I don't recommend attempting 3ghz unless you are above a bin 6.

To find your CPU binning run this command in terminal emulator:

su (enter)

cat /proc/cpu/msm_acpu_pvs﻿ (enter)

note that the number may be displayed at the beginning of the next line.

It will then display a number from 0-15. 15 being the best. Don't stress over it too much if you score low, its not the end of the world. It just means you need marginally more voltage to run each frequency.

Governor:

Most people will probably want to just leave this set to interactive. Its a really good governor that is being actively devolped by CAF and Google. Its "smarter" than OnDemand and generally considered to offer better battery life. If you want even more smoothness some consider OnDemand to provide a bit better performance, however you may get slightly worse battery life. This is because OnDemand ramps up to max frequency when there's is load put on the CPU and then slowly works its way down. Interactive scales through the frequencies on the way up and down which saves battery life but prevents it from jumping to max speed as fast if it is needed. Simms22 recommends using the OnDemand governor with "upthreshold" set to 98 and the sampling rate set to 15000. That is the default setting of the Trinity Kernel. Mistertac made the great suggestion of turning the max screen off frequency down to 600mhz if using the interactive governor. This will prevent any misbehaving apps from keeping CPU ramped up while screen is off and give better idle drain. The actual number you would have to type in would be 652800 for the screen off frequency. As of the latest update I recommend running the intelliactive governor, its basically an enhanced version of the interactive governor created by the brilliant faux123, it is designed to run with intelliplug, but works on mpdecision as well.

Hotplugging

:

Next go to hot plugging section and disable MPDecision(make poor decision) and enable intelliplug. FauxClock allows you to further configure intelliplug. If you want more battery set it to Conservative (4) mode which will hotplug the CPU more conservatively and save you battery, essentially this means it will use less cores if it can. For most people, leaving it on Balanced (4) mode will be fine. If you want further battery savings you can set it to EcoPerformance (2) which will only use a max of 2 cores.

Voltage Control:

Next go to voltage control. I'm a Bin 5 and I can use a 24mVolt undervolt without becoming unstable. This means pretty much anyone can probably get away with this and its across the board battery savings so you may as well. Rember! Never set voltages to apply on boot until you have tested them for a few hours first! Most people can probably get away with a 36mVolt undervolt. Also remember that if you are running an over clock you may not want to undervolt. If you find yourself running into freezes or random reboots remove the undervolt!

I/O Settings:

For I/O scheduler select Deadline. As of the current available options Deadline is the best. I then proceeded to do a lot of benchmarking with different read ahead sizes. 1024 seems to be the optimal setting. Going larger degraded performance as did going lower. Newer builds of Sensei now include FIOPS scheduler which is widely regarded as one of the best for phones, so I suggest using that over deadline.

Color Control:

Next you may want to adjust Screen RGB. WrinkleFree over in the Lean Kernel thread did extensive testing with a professional grade $1000 screen calibration tool.

For the most truly color accurate screen at D6500K:

Red - 248

Green - 246

Blue - 255

If you prefer a slightly cooler screen and the tuning the iPhone uses which is D7400K:

Red - 237

Green - 235

Blue - 255

More info can be found about color calibration here: http://xdaforums.com/showpost.php?p=57265483&postcount=620

These settings are meant to be used as a starting point. Depending on your cpu binning and desires you will probably want to tweak these slightly to fit your needs. I'll add more as new features get added, I learn more, and I think of stuff to add :P Hope it helps someone!