Related
Hello everyone,
I'm the maintainer of the Liquorix kernels for Debian / Ubuntu in the linux world. By default, this kernel is setup to use BFS, plus all the other patches from zen-sources and a finely tuned configuration to reduce overhead and increase throughput / reduce latency.
I recently bought the Nexus One to replace my old phone and have been fumbling around the forums, just looking around and putting on mods like Cyanogen. Just skimming through the selection of kernels, I'm very surprised.
How come CFS is still the scheduler of choice? Many users have exclaimed in posts about the increase in speed and fluidity - very much the same reaction for users switching to my kernels on Debian. The only developer here using BFS seems to be kingslick, but I don't know which version of the kernel he's using exactly, it just says 2.6.33 even though 2.6.33.2 is out per the day of this posting.
How come there has been a slow uptake on the BFS scheduler? Is it difficult to patch, not enough feed back, instability, etc... ???
That would explain why his kernels always seem lightning quick, lol.
Where do you see King using BFS. In his Nexus Desire Rom he states in the OP he has switched back to CFS
if i remember correctly atleast when I was using the g1 bfs was causing instability issues, I dont think i've heard anything about bfs on the nexus so I cant say one way or the other why it isn't used more often.
BFS used to be good on the ARM architecture, but not anymore. Its instable and actually slows down the phone.
which version is unstable? Since the 300 series of BFS, the final stability bugs were fixed AFAIK.
damentz said:
which version is unstable? Since the 300 series of BFS, the final stability bugs were fixed AFAIK.
Click to expand...
Click to collapse
and the 300 series runs poorly on our phones
*puts up hand* whats bfs?
dogiedogie said:
*puts up hand* whats bfs?
Click to expand...
Click to collapse
BFS = Brain **** Scheduler. It controls the CPU and other processes at the kernel level
dogiedogie said:
*puts up hand* whats bfs?
Click to expand...
Click to collapse
these might help:
http://ck.kolivas.org/patches/bfs/bfs-faq.txt
http://ck.kolivas.org/patches/bfs/sched-BFS.txt
persiansown said:
and the 300 series runs poorly on our phones
Click to expand...
Click to collapse
Where can I find a forum thread discussing this? I've been only seeing good things, not bad.
http://www.google.com/search?q=BFS+site:xda-developers.com
As you can see there were many BFS roms earlier (3xx version too), but nearly all developers switched back to CFS cause of stability problems.
I'm seeing a lot of ports to 2.6.29 for BFS. If those are amateur ports, I would expect instability and unpredictable bugs.
BFS is always moving forward and the newer versions are based off of the currently stable kernel, in this case, 2.6.33 at the time of this posting.
damentz said:
I'm seeing a lot of ports to 2.6.29 for BFS. If those are amateur ports, I would expect instability and unpredictable bugs.
BFS is always moving forward and the newer versions are based off of the currently stable kernel, in this case, 2.6.33 at the time of this posting.
Click to expand...
Click to collapse
Pretty much every single Kernel developer has given BFS a go, and all of them have had the same end result. Even Cyanog and pershoot.
damentz said:
Where can I find a forum thread discussing this? I've been only seeing good things, not bad.
Click to expand...
Click to collapse
I generally talk about it in IRC
I spoke with Con about the poor performance post 200 series on these Android phones, and he said that he wasn't aware of anything changed since then.
...but also, no one had brought these bugs to his attention, so nothing got fixed.
If anyone's willing to maintain a BFS kernel for android with the newest upstream code, I can test it and try to identify what the problem might be. There's a very large potential for performance to increase on the android platform if BFS becomes the optimal choice - we cannot let this slip unnoticed!
BFS is poorly suited to android.
Reason is this:
Android has a timeout function -- when an application takes too long to respond, it issues an "application not responding" dialog. This includes BACKGROUND processes. BFS, of course, favors FOREGROUND processes, so when you have a foreground process sucking up all the CPU (because BFS is unwilling to give over the necessary CPU time to the background processes), those background processes end up taking longer than the timeout allows, which means that any time you run a CPU intensive foreground process, all the background processes will go ANR.
CFS doesn't have this problem. Background processes will still get their fair share of CPU time.
Remember that these devices are PHONES first and foremost! If the phone rings, the process handling the phone ringing MUST be able to run in a sensible amount of time.
I remember BFS on Cyanogen back with the G1. It actually did give a pretty quick feeling phone. Like others said, it had its stability issues though.
But, maybe you can talk one of the kernel devs (intersectRaven or Ivan or pershoot or someone) into maintaining a separate BFS kernel along with the ones they already do. They might turn it down as its alot of extra work.. but, you never know!
I'd be willing to test the kernels out on my phone if someone was willing to actively maintain one for testing.
lbcoder said:
BFS is poorly suited to android.
Reason is this:
Android has a timeout function -- when an application takes too long to respond, it issues an "application not responding" dialog. This includes BACKGROUND processes. BFS, of course, favors FOREGROUND processes, so when you have a foreground process sucking up all the CPU (because BFS is unwilling to give over the necessary CPU time to the background processes), those background processes end up taking longer than the timeout allows, which means that any time you run a CPU intensive foreground process, all the background processes will go ANR.
CFS doesn't have this problem. Background processes will still get their fair share of CPU time.
Remember that these devices are PHONES first and foremost! If the phone rings, the process handling the phone ringing MUST be able to run in a sensible amount of time.
Click to expand...
Click to collapse
That's dumb, CFS is the scheduler that is unfair. CFS uses a red black tree with interactivity heuristics to create a timeline for processes to run for a specific amount of time. BFS on the other hand uses deadlines to choose which process runs next, using absolutely no heuristics. The shortest deadline should run first unless a process with a lower nice value preempts it.
I would expect BFS to be more responsive with your tests, since no application should be starved from heuristics. That's why it also performs better with games and 3d applications, since the cpu time is given fairly and in steady amounts, allowing for a more enjoyable graphical experience.
BFS should also run much faster on slower cpus because it has very low execution runtime memory footprint. I remember when BFS was first starting, one of the lesser known difference between BFS and CFS were the cache misses on CPUs with low amounts of L2 cache. Of course, no one put these online since it was just fun to experiment with.
But, maybe you can talk one of the kernel devs (intersectRaven or Ivan or pershoot or someone) into maintaining a separate BFS kernel along with the ones they already do. They might turn it down as its alot of extra work.. but, you never know!
Click to expand...
Click to collapse
Yes, that would be cool. I'll also help with these kernels and get some of the most technically helpful bug reports to Con so these bugs can be fixed once and for all.
Compiled a BFS kernel as per your request. It can be found on my MediaFire folder. Not really sure if BFS is active though since I only found one entry in menuconfig which is in the general section and not where I expected it to be (with CFQ and Deadline options).
*Just read more...I was confusing CFS with CFQ...
I am proud to announce Savage-Kernel to the xda forms. Currently in beta testing we worked from the latest invisiblek kernel newly undervolted, HAVS with the SBC mod.
JUST FOR @PonsAsinorem:::::: DISCLAIMER!!!! IM NOT RESPONSIBLE FOR BRICKING YOUR PHONE... EVEN THOUGH THE KERNEL CANNOT BRICK A ROOTED PHONE UNLESS YOU FLASH A BAD RECOVERY..... DON'T MODIFY THE UPDATER-SCRIPT TO FLASH THIS TO YOUR RECOVERY!!!!!! .... ALL CHANGES TO THIS KERNEL STILL MEET THE MINIMUM SPECS OF THE INC.... UNLESS YOU OVERCLOCK... WHICH IS UNDERVOLTED... WHICH IS RUNNING AT THE STOCK VOLTAGE AND SHOULDN'T HARM YOUR PHONE ANYWAY.
SENSE BASED ROMS NOT SUPPORTED THIS IS FOR AOSP ROM'S ONLY
So far the Kernel works great in conservative governor. which all the devs prefer.
Devs:
jsseidel1 (co-creator)
luisrcastillo (co-creator)
ms79723 (SBC mod updates)
lithid-cm (contributer. Updater-script guru)
Credits:
invisiblek--> base kernel!!
ms79723 --> the SBC mod.
netarchy --> smartass gov
intersectRaven --> HAVS
(credits are given to the dev's where we got some code from, may no be original designer)
CFS Builds:
Alpha1 : Click Here to download
Stable v1 : Click Here to download
BFS Builds:
Follow the github on twitter @evokernelsrc
If you like our kernel and want to support us... donate (no obligation)
Change log
Code:
[B]Alpha 1[/B]
Undervolted to 925
HAVS implemented configured for conservative
smartass added for fans
SBC Mod added (trickle Charging)
Enabled OC to 1.19 and stable
conservative governor tweaks
HAVS tweaks
smartass governor tweaks
voltage tweaks
BFS360 (latest version) and CFS VERSION!!!
Added SBC v7
BFS tweaks to ondemand gov
tweaks to interactive gov
bad ass CFS tweaks!!!!!
aggressive swap drop
misc tweaks
[B]Stable v1[/B]
SBC v7 ported from Evo (better battery life, this is a HTC mod so doesnt matter that it came from Evo)
FAQ's
All answers are based off latest stable build
Which governor should I use?
Use Conservative for best battery, if you get any lag or choppy or shutter switch to either Smartass or interactive.
Which governors are tweaked?
Conservative and Smartass
I'm running smartass and having screenwake issuesm what do I do?
We suggest you set up a screen off profile of 245/384 to avoid the wake issue.
Have any more? Just ask!!
jsseidel1 said:
All answers are based off latest stable build
Which governor should I use?
Use Conservative for best battery, if you get any lag or choppy or shutter switch to either Smartass or interactive.
Which governors are tweaked?
Conservative and Smartass
I'm running smartass and having screenwake issuesm what do I do?
We suggest you set up a screen off profile of 245/384 to avoid the wake issue.
Have any more? Just ask!!
Click to expand...
Click to collapse
What kind of battery life are you getting with this? I know results vary, but just curious.
Sent from my ADR6300 using XDA App
excited to try this
jsseidel1 said:
All answers are based off latest stable build
Which governor should I use?
Use Conservative for best battery, if you get any lag or choppy or shutter switch to either Smartass or interactive.
Which governors are tweaked?
Conservative and Smartass
I'm running smartass and having screenwake issuesm what do I do?
We suggest you set up a screen off profile of 245/384 to avoid the wake issue.
Have any more? Just ask!!
Click to expand...
Click to collapse
How did you determine that conservative is the most power-friendly?
I would post a disclaimer about the SBC mod.
Sent from my ADR6300 using Tapatalk
Am I missing the link here or has it not been posted yet? I'm excited to test.
Guys, SBC *really* isn't good for the battery. Li-Ion batteries aren't designed to use trickle charging. IMO this will kill the batteries faster and isn't worth the extra charging.
waiting to try this... dont think it will hurt my battery in the short run... who keeps phones longer than 2 years anways?
True. I've gotten better battery life off of it, but I feel like my MIUI build recently has been getting worse due to the SBC mod.
Works on gingerbread roms?
Sent from my ADR6300 using XDA App
If it's AOSP, it should, but sometimes I've gotten weird reactions using kernels that are claimed to work on all AOSP ROMs (Kingx Kernel + MIUI = no-no. Also, MIUI + Hydra = no-no).
Point being, we should probably get this clarified. I've seen instances where people have lost touchscreen functionality (though usually that's due to a failure to wipe cache/dalvik) among other issues. Until we field test this on GB ROMs or until the OP states that it works on them, we should probably refrain from flashing it over a GB ROM. You can do it if you want, I'm in no way trying to make you turn away from it; I'm just saying take it with a grain of salt.
Plus there's the SBC issue to worry about; trickle-charging has negatively affected the battery performance of my MIUI ROM, so I'm going to switch kernels whenever I go back to it. Better charging in the short run < not needing to buy new batteries in the long run (and therefore saving money).
link??????
*sigh*...
Ok, clearly I need to start citing the comments I make. Here you go:
http://forum.xda-developers.com/showthread.php?t=885476&page=25
The first post on this last page pretty much sums it up (actually, read 23-25 to sum up the main issues, it also has links to OTHER posts talking about the issues), but if you want other chronological examples of touchscreen failure or other issues you can read examples from pages 2, 5, and some places past page 15. SBC is bad news on its own, and adding overclocking to it just makes it worse. Again, you can use the kernel if you want, I'm not gonna stop you, I'm just saying that there have BEEN problems with it on other AOSP ROMs. MIUI seems to take pretty well to SBC in terms of battery, as I've seen; but, it's been getting worse as of late. UltimateDroid had a touchscreen failure (page 5) in v1; I don't believe that's been fixed yet, but feel free to correct me. MIUI had a touchscreen failure in v2 (though I think there might have been a bad flash involved, because I flashed SBC to my MIUI 12.24 at the time and it worked fine), cited page 23. Need I go on? Lol.
Point is (I've said that a lot, I know) that it does damage, multiple AOSP ROMs are getting touchscreen failure, and there's more harm than good that comes out of it.
Read: http://www.ziggy471.com/2011/01/02/overcharging-batteries/
That's a good link also. It's actually in the thread I posted, but its equally as important if not more important than my post. Good job man XD
Sent from my HTC Incredible running Carbonite Red 1.5.
Ok you all need to relax. SBC does not over charge your battery. The trickle charging is essentially the battery staying at 100% while on the charger. Lithium ion batteries have tech built into them to protect from over charging and such. SBC just means when you take it off the charger it will really be at 100%. You can't over charge aanyway. This kernel allows you to overclock but it doesn't force it. You need to choose overclocking yourself in setcpu. ... and 90% of the kernels in this forum have SBC they just either don't say it or they call it the battery fix. You can see it in their gits. On the evo forums we just call it SBC. Ill be posting the kernel today. If you don't want to use it. Then don't. It was just requested that I port my evo kernel over to the Inc. So I am.
Sent from my PC36100 using XDA App
gmichaelow said:
How did you determine that conservative is the most power-friendly?
Click to expand...
Click to collapse
Conservative by nature is more power friendly as it only ramps up the processor as requested then brings it right back down to your min.
The way we have set our Governor is to optimize the Conservative Governor to get the most speed stability and battery life out of your phone.
I just got a config from one of your rom dev's to build the kernel so this should be posted by tomorrow.
I for one appreciate what you are doing. There is nothing wrong with having a variety of kernels to choose from. If you disagree with what this dev is doing, then use another kernel. We don't need to be running them off.
Sent from my ADR6300 using XDA App
i am fairly new to rooting phones. i just installed cyanogen 7 on my htc hero. works much faster than the stock. had heard that you can overclock the cpu. i downloaded CPUmaster free and lets me clock cpu to 768MHz. have been doing some research on this and have come across a few things. so really just one question; 1) what is the fastest you can clock the cpu with it still being stable?
help with this would be very much appreciated!
Depends on a variety of factors and every Hero is different. Depends on the ROM your running, kernel, etc. You can play around with capped and uncapped kernels but no one can really give you an exact # but you..u'll just have to try tinkering with the settings. If your wise you will just select one of the governors located in Cyanogenmod Settings. I prefer SmartassV2,min. 362 max 691 its efficient and takes care of everything while prolonging the life of your battery. Also remember that overclocking for an extended period of time will overheat your phone and could cause damage, so keep an eye on the core temp while playing with ur cpu settings.
1big_bear said:
i am fairly new to rooting phones. i just installed cyanogen 7 on my htc hero. works much faster than the stock. had heard that you can overclock the cpu. i downloaded CPUmaster free and lets me clock cpu to 768MHz. have been doing some research on this and have come across a few things. so really just one question; 1) what is the fastest you can clock the cpu with it still being stable?
help with this would be very much appreciated!
Click to expand...
Click to collapse
Some phones can't take more than 691, some can handle 768. I have found, for my phone, that 245/710 works great for me. I can see a marked improvement in snappiness at 710 over 691, but not really much at higher frequencies.
I used to use OnDemand as my scheduler, but with the newer .35 kernel I have liked the SmartassV2; I don't have any issues with music cutting out like i would with smartass or interactive. CM7, or most any of the roms built off of that, have the option in CM Settings to adjust both the frequency and governor so you don't need to install a 3rd party app to do so (it's under the "performance" heading). I also like to go into the spare parts app and set my animations to fast; that's just me though. I think the new CM7 builds have Jaybob's .35 kernel now instead of the .29. I have not seen an uncapped kernel that goes beyond 768 in a long time. There was one that jasonmaloney compiled that did 806 (I think) but that was pulled by him as it isn't good for the phone. just test it out and see what you like with what you have installed on your phone. Every phone is different even though they are the same.
Q: Are you Dead?
A: No. But on these day, I'm do something else (learning C/Python). I will come back in some day.
This is an experimental kernel based on the latest Air kernel(v4.4). I patched and re-config the kernel for testing and/or for fun.
My patches will never ever comes into other kernels.
1. using ext4 subsystem for ext2/3.
A very funny thing is Air kernel enabled "using ext4 subsystem for ext2/3", but independent ext2 support enabled, too.
I know It is insignificant for the performance. But that makes me feel sick So I disabled independent ext2 support to get a smaller(0.5kb lower?) kernel.
2. using the BFS scheduler.
For small systems, the default scheduler - CFS, is a very complex things, and complex code cause a low performance in embedded systems. BFS is a simple scheduler for embedded systems. It can makes the CPU go faster. In fact, some people think it makes Android UI slower than before.
BFS is written by Con Kolivas.
For more information, you can visit Con Kolivas blog: http://ck-hack.blogspot.com/
3. UKSM
Linux kernel uses KSM to merging same pages for KVM virtual machine. Cyanogenmod modified Android, so KSM can work with Dalvik too. And we can get more RAMs. UKSM is a new project, it more powerful than KSM. It works without any modify. UKSM will scan all data in memory and merge them.
UKSM is a Chinese project, and it's still in development.
You can visit http://http://kerneldedup.org/en to learn more. But there only one page is available in English now.
Usage of UKSM: http://kerneldedup.org/en/projects/uksm/uksmdoc/usage/
4.Deadline for default I/O scheduler. (In v0.06)
CFQ cause low boot performance and missing app icons on my phone. So I set deadline for default scheduler.
WARNING: Don't use it with Jelly Bean, if you do it, your phone will unable to boot, unless you flash a Jelly Bean's kernel.
Latest version
The latest version is v0.09.
All version (included broken/buggy kernel) downloads: http://biergaizi.info/pub/
Voodoo color
It has Voodoo color only(no 65fps or blue color)
Download: http://biergaizi.info/pub/[BFS returns][Air kernel 4.4][0.09][voodoo-color].zip
65fps+Blue color
It has 65fps + blue color.
Download: http://biergaizi.info/pub/[BFS returns][Air kernel 4.4][0.09][65fps+blue].zip
Known Issue:
1.Random crashes/reboots.
Note1: I think it's a upstream issue.
Note2: Issue 1 was no longer exist in v0.06
Found a bug?
If you phone is crashed or auto-rebooted, please type this command after you first reboot:
cat /proc/last_kmsg > /sdcard/kernel_log.txt
Then you can find a file in your sdcard(usb mass storage) and its name is kernel_log.txt
Please reply and upload it for attach file, it can help me to solve the problem.
The source code is available from patches, sources on Github will remove soon:
http://biergaizi.info/pub/sources/
About the version number:
My zips' name are follow these rules:
[BFS returns][Air kernel x.x][x.x][voodoo-color]
.......^...............^.............^...........^
..Codename..Based on what...Main.....voodoo-color or
.....................version of....version....65fps+blue color
.....................Air kernel.....number
For example, [BFS returns][Air kernel 4.4][0.05][voodoo-color] is stand for:
the kernel's codename is 'BFS returns', based on Air kernel 4.4, the main version number is 0.05, and this kernel is a voodoo-color-kernel.
And I must talk about the main version number:
...x.........................xx..................x...............-...x.
...^..........................^..................^..................^
."Milestone".............times of.............small fix for.....complied version or zipped
version with major.....small changes......this release...version (changed kernel
....changes..........................................................config, version of gcc,
.........................................................................or fixed a broken zip file)
For example:
0.05 is stand for no major changes, and the fifth time of release with small changes, no small fix for it, just complied one time.
Q&A:
What is a scheduler?
Your computer often has 1-8 CPUs only, a CPU can do one thing in one time only. But you can run 500 processes on it. Why? Because scheduler switches processes. For example, You have 1 CPU only, and you opened 100 processes, scheduler will let one process run some time, and interrupt it, then let the next process run. So, there is a single process running only. But CPU is very fast, and scheduler switches them quickly, so you can't feel it.
How long does the scheduler let one process run? Different schedulers have different answers. But all of them are using algorithms to schedule process rational.
The history of CFS & BFS?
5 years ago, there was a scheduler called CFS. It's a very high performance scheduler, so it replaced O(1) scheduler when it merged. Facts have proved that, it is really high performance, because it can use on a supercomputer with 4096 CPUs.
On a supercomputer, a priority is very important and useful. Because many people are connecting to the supercomputer and work on it, so, you must specify the priority to people, to share the resources fairly. CFS is this kind of scheduler: it has advanced priority system. Such as group scheduled, so we can specify the priority to every single user & usergroup.
But, Does the most people use the supercomputer??
For me, I still use a computer with legacy device: a Pentium M CPU sometimes. And I use SCMs, such as a MP3 player, or devices with ARM chips, such as routers, iDevices, and my Nexus S smartphone.
By design, CFS will use on everywhere. So, it can't optimize for the device you are use. For example, we still use a supercompuer to elaborate it: priority is important on the supercomputer, but how about on the SCMs or smartphones? There are only one user at the same time. But, CFS is trying to compute the priority of the users every second!! These things are useless on low-performance-devies, and cause the low performance. It really not optimized for the low-performance-devices.
So, Con Kolivas, the designer of CFS (he just wrote some paper for it, the developer is Ingo Molnár. He also is the developer of O(1), wroto CFS before Con Kolivas. Con Kolivas is very angry for that) wrote a new scheduler for low-performance-devices, called BFS, Brain **** Scheduler. Why Brain ****? Because it very easy and simple, and kind of stupid scheduler, but it can improve performance on low-performance-devices. It removed some "awesome" design, such as advanced priority, but a stupid and simple one, etc.
It really a bad scheduler for 8-core-systems, and a terrible scheduler for 16-core-systems. But a great system with single-core and dual-core. Con Kolivas said it will never be in to the mainline Linux kernel, because it isn't a general scheduler, but I will keep update for it outside the mainline kernel code.
But now, CFS is better than before too. Lots of people think, CFS is the winner now.
Tell me something about UKSM.
This is an improvement upon KSM.
Its new features:
1. Full system scan:
It automatically scans all user processes' anonymous VMAs. Kernel-user
interaction to submit a memory area to KSM is no longer needed.
2. Rich area detection:
It automatically detects rich areas containing abundant duplicated
pages based. Rich areas are given a full scan speed. Poor areas are
sampled at a reasonable speed with very low CPU consumption.
3. Ultra Per-page scan speed improvement:
A new hash algorithm is proposed. As a result, on a machine with
Core(TM)2 Quad Q9300 CPU in 32-bit mode and 800MHZ DDR2 main memory, it
can scan memory areas that does not contain duplicated pages at speed of
627MB/sec ~ 2445MB/sec and can merge duplicated areas at speed of
477MB/sec ~ 923MB/sec.
4. Thrashing area avoidance:
Thrashing area(an VMA that has frequent Ksm page break-out) can be
filtered out. My benchmark shows it's more efficient than KSM's per-page
hash value based volatile page detection.
5. Full Zero Page consideration(contributed by Figo Zhang)
Now uksmd consider full zero pages as special pages and merge them to an
special unswappable uksm zero page.
How to tweak UKSM?
http://kerneldedup.org/en/projects/uksm/uksmdoc/usage/
You are just add BFS patch to Air kernel, the kernel is useless, everyone can do it!!!
Yes, I am a patcher and a compiler. Some kernel in XDA, also just add some patch and small hack to improve proformance. And users will not compile their own kernels, right? I'm doing the same thing. I will do more work soon.
Catalog:
Jul.24.2012 | 0.09:
1. Backported Codel queue management algorith from Linux 3.5.
Jul.23.2012 | 0.08:
1. Updated kernel source to Linux 3.0.38!
P.S: This time I didn't just copy r_data's code, I did it by myself. Because r_data is working on Jelly Bean's kernel and forgot to update this kernel!
Jul.15.2012 | 0.07:
1. New UKSM patchset.
2. r_data just updated him version information.
Jun.28.2012 | 0.06:
1. New UKSM patchset.
2. Deadline for default I/O scheduler.
3. Based on real Air kernel 4.4, not 4.3 weekly.
Jun.23.2012 | 0.05:
1.Updated kernel source code to Air kernel 4.4.
2.ext2/3 mounted by ext4 subsystem.
3.UKSM replaced KSM.
Apr.09.2012 | 0.03:
1.Update kernel source code to Air kernel 3.9.5.
2.There are not High Bigmem/Non-High Bigmem versions, because I don't want to build 4 versions. And I don't know my kernel is a what version. I think it's a High Bigmem version.
3.Source code are not on Github yet.
Apr.08.2012 | 0.02:
1.Use r_data's config, a major update!
2.Based on Air Kernel 3.9
3.Fix a BFS of bug.
4.Source code are not on Github yet!
5.[Apr.09]Quickfix: Fix the bad zip file.
Apr.05.2012 | 0.01:
1.First release.
2.Based on Air Kernel 3.8
3.BFS kernel.
biergaizi said:
Catalog
Apr.05.2012 | 0.01:
1.First release.
2.Based on Air Kernel 3.8
3.BFS kernel.
Click to expand...
Click to collapse
I'm a huge fan of Air. I don't really get the idea of how BFS can improve an already awesome kernel, but I'll give it a try, and report back asap. Thanks for your work.
EDIT: Sorry, still not as smooth as Air. Going back to v3.8. Good job anyway. Cheers!
Sent from my Nexus S
apatal said:
I'm a huge fan of Air. I don't really get the idea of how BFS can improve an already awesome kernel, but I'll give it a try, and report back asap. Thanks for your work.
EDIT: Sorry, still not as smooth as Air. Going back to v3.8. Good job anyway. Cheers!
Sent from my Nexus S
Click to expand...
Click to collapse
I'm sorry for that. Because I just want to add latest BFS to the kernels for somebody who want to try it (included me). And I use Linux a long time, I just want to learn how to compile Android kernel.
But I can't get r_data's kernel config file, and I don't know his Email address. So, I write a terrible one. This kernel has lots of bugs. I think you was saw the version number of it, 0.01
I will still improve it.
Thanks.
I did a comparison of the performance of bfs and cfs a while back using the two kernels that provided both, Matr1x and GlaDOS. CPU scores improved with bfs but graphics deteriorated and i noticed UI lags with bfs. The results are still available to view on the kernel spreadsheet (see link in my signature).
kernels ; battery ; ROM ; gov/sched
Now with summaries in the first posts. Convenient for XDA app users!
Because BFS use interrupts for multitasking, so it cause UI lags. But the overall performance should improved I think.
Your test proved it. Thanks
biergaizi said:
because bfs use interrupts for multitasking, so it cause ui lags. But the overall performance should improved i think.
Your test proved it. Thanks
Click to expand...
Click to collapse
终于! 有个中国人开始写内核了, 支持支持~~~
biergaizi said:
Because BFS use interrupts for multitasking, so it cause UI lags. But the overall performance should improved I think.
Your test proved it. Thanks
Click to expand...
Click to collapse
I am curious... You said earlier you wanted to develop a kernel to use BFS... but then you said you "found" r_data's config file.... meaning he didn't give it to you, so you haven't actually "developed" anything... so that you can add a scheduler for users who typically don't use BFS.
By Bedalus' own own testing, the BFS causes some lags in UI functions, but "may improve overall system performance".
So I am curious; when there are well developed, and tested kernels like Matr1x, Glados, Steve Garon's, and the official Air Kernel with amazing performance, speed, smoothness and responsiveness, what benefit does your kernel offer?
I am a consummate kernel flasher, and guess I would like to know your sales pitch. You know benefits, etc.
While I try many kernels, I try none without some research first. and so far, sooner than later I return to Air Kernel for it's stability and responsiveness.
Thanks
Steviemac12 said:
I am curious... You said earlier you wanted to develop a kernel to use BFS... but then you said you "found" r_data's config file.... meaning he didn't give it to you, so you haven't actually "developed" anything... so that you can add a scheduler for users who typically don't use BFS.
.......
So I am curious; when there are well developed, and tested kernels like Matr1x, Glados, Steve Garon's, and the official Air Kernel with amazing performance, speed, smoothness and responsiveness, what benefit does your kernel offer?
Click to expand...
Click to collapse
C'mon, give the kid a break, he's got his heart in the right place
It's open source and on a git somewhere; he is also crediting r_data.
So although it still isn't a very compelling kang of the Air kernel, he hasn't done anything sleazy.
Sent from my Nexus S using xda premium
motorator said:
C'mon, give the kid a break, he's got his heart in the right place
It's open source and on a git somewhere; he is also crediting r_data.
So although it still isn't a very compelling kang of the Air kernel, he hasn't done anything sleazy.
Sent from my Nexus S using xda premium
Click to expand...
Click to collapse
My apology... never said he did anything "sleazy". Re-reading now, It came off a bit... well not exactly as I intended.
Just trying to understand where he is going with his project.
Again... biergaizi no offense intended. I think I am having sour grapes (jealous) because I wish I could learn to do what you guys do.
will give this one a try and maybe I can be more constructive.
Thanks Motorator for the kick in the pants..
I'm in the same boat as you in that I wish I knew how to code or at least compile some of this stuff.
Don't take it the wrong way. I didn't mean anything harsh; I just don't want young'uns like the OP to get discouraged.
Maybe this gets traction, or maybe it goes the way of most hobby coding projects. Whichever it is, we should at least let him try
Sent from my Nexus S using xda premium
motorator said:
I'm in the same boat as you in that I wish I knew how to code or at least compile some of this stuff.
Click to expand...
Click to collapse
+1 on this.
I've been hanging out in this forums and I'm getting an itch to start contributing as well, that is, contributing beyond merely test-driving their creations and actually coming out with something useful myself.
I even have the beginnings of a plan on how to go about it. Wish me luck!
apatal said:
I even have the beginnings of a plan on how to go about it. Wish me luck!
Click to expand...
Click to collapse
All the best with your plan. I hope you succeed and motivate us all to also take part :thumbup:
Sent from my Nexus S using xda premium
Nice try, and keep on going.
Steviemac12 said:
I am curious... You said earlier you wanted to develop a kernel to use BFS... but then you said you "found" r_data's config file.... meaning he didn't give it to you, so you haven't actually "developed" anything... so that you can add a scheduler for users who typically don't use BFS.
By Bedalus' own own testing, the BFS causes some lags in UI functions, but "may improve overall system performance".
So I am curious; when there are well developed, and tested kernels like Matr1x, Glados, Steve Garon's, and the official Air Kernel with amazing performance, speed, smoothness and responsiveness, what benefit does your kernel offer?
I am a consummate kernel flasher, and guess I would like to know your sales pitch. You know benefits, etc.
While I try many kernels, I try none without some research first. and so far, sooner than later I return to Air Kernel for it's stability and responsiveness.
Thanks
Click to expand...
Click to collapse
In Linux community, there are lots of people don't develop anything, but just compile the source code into binary. And do you know Zen Kernel? It just add other hacker's(not in mainline kernel)patches into it.
Why I can't do the same thing in XDA
qtwrk said:
终于! 有个中国人开始写内核了, 支持支持~~~
Click to expand...
Click to collapse
谢谢支持。看来Unicode还是很强大的。
-------------------------
Unicode is really a great characterset.
biergaizi said:
In Linux community, there are lots of people don't develop anything, but just compile the source code into binary. And do you know Zen Kernel? It just add other hacker's(not in mainline kernel)patches into it.
Why I can't do the same thing in XDA
Click to expand...
Click to collapse
Please accept my apology. Sometimes I talk out of my ass and this was one of those times.
Wish I could do what you are doing.
Sent from my Nexus S using xda premium
Just flashed this kernel and I think it's pretty snappy, I think basing it on Air Kernel is a good idea. I would say that this is something we're missing here in the NS forums is a Kernel based on BFS, I know most kernels come with the option of either, but a focused BFS kernel is certainly not a bad thing, I used to love it back in my days on the Desire.
I remember the days of compiling kernels for my Linux boxes when I was younger, I now just let updates decide what's best since I was constantly tinkering and getting it wrong.
toyface said:
Just flashed this kernel and I think it's pretty snappy, I think basing it on Air Kernel is a good idea. I would say that this is something we're missing here in the NS forums is a Kernel based on BFS, I know most kernels come with the option of either, but a focused BFS kernel is certainly not a bad thing, I used to love it back in my days on the Desire.
I remember the days of compiling kernels for my Linux boxes when I was younger, I now just let updates decide what's best since I was constantly tinkering and getting it wrong.
Click to expand...
Click to collapse
I'm using Linux everytime. And I'm carzy, I think install from source will get a high performance(because I was had a laptop with legacy hardware, compile packages with march= is really works). So, I using Gentoo, compile everything.
But I'm also a funs of Fedora.
If today I'm lazy to compile:
I will boot Fedora
Else:
I will boot Gentoo
Hi guys,
I am not new to using custom ROMs but I would like to understand a bit more about optimizing my beautiful phone to my needs.
I am running the latest stable CM and just today flashed Iodak kernel 0.7
I understand with using Trickster MOD I can do a lot tweaking - but I don't understand most of what I can do there and whether it would actually make things "better" for me.
Here's my request:
Can you tell me how I should set parameters in Trickster and explain at least in short why?
I do not game on my phone, I use it mostly for social interaction and navigation, therefore I suppose I don't need max power, I am rather interested in good battery times while not loosing the smoothness of use.
Thanks in advance.
netwolff said:
Hi guys,
I am not new to using custom ROMs but I would like to understand a bit more about optimizing my beautiful phone to my needs.
I am running the latest stable CM and just today flashed Iodak kernel 0.7
I understand with using Trickster MOD I can do a lot tweaking - but I don't understand most of what I can do there and whether it would actually make things "better" for me.
Here's my request:
Can you tell me how I should set parameters in Trickster and explain at least in short why?
I do not game on my phone, I use it mostly for social interaction and navigation, therefore I suppose I don't need max power, I am rather interested in good battery times while not loosing the smoothness of use.
Thanks in advance.
Click to expand...
Click to collapse
Your needs is same as mine...What ive done using trickster mod is changed Governor/Scheduler..On SmartDimmer, Disable FSync, Undervolt all frequency...As undervolting values varies with your usage...As mine, i lower down most of the freq above 1000Mhz and below that freq, i undervolt as medium value as i can, to be exact, 25mv each...
As Governor, read up about each governor behavior and find the one that most suited you, same as Scheduler...
I'd prefer Interactive+Sio...Hope this helps
This is not the Q&A section...
Sent from my smart frying pan (Tegra 3)
@non4 said:
This is not the Q&A section...
Sent from my smart frying pan (Tegra 3)
Click to expand...
Click to collapse
True, but the description was "general chat, tips & tricks, etc" and I thought that pretty much hit it.
Sorry if I thought wrongly.
netwolff said:
True, but the description was "general chat, tips & tricks, etc" and I thought that pretty much hit it.
Sorry if I thought wrongly.
Click to expand...
Click to collapse
If you have a question, always in Q&A if its a small rom/kernel issue or bug report that's usually wecome on the respective thread as long as its relevant
Sent from my smart frying pan (Tegra 3)