Post Reply

Phone [KERNEL] [AOSP/Samsung/ArchiPort] [Linaro 4.9.2] [18/10/14] ArchiKernel V1.5.2 BEAST

OP JustArchi

17th June 2014, 03:09 AM   |  #1  
JustArchi's Avatar
OP Recognized Contributor / Recognized Developer
Flag Warsaw
Thanks Meter: 23,230
 
6,948 posts
Join Date:Joined: Mar 2013
Donate to Me
More

  • Base: Samsung Update14 Sources (NOT smdk4x12)
  • Linux 3.0.31
  • Compiled using Linaro 4.9.2 gnueabihf toolchain
  • ArchiDroid Optimizations
  • Using AnyKernel method (compatible with all ROMs for both AOSP and Samsung)
  • And many other awesome things I have no time to list

ArchiDroid Optimizations:
Quote:

- Fully optimized for Samsung Galaxy S3 (-marm -march=armv7-a -mcpu=cortex-a9 -mtune=cortex-a9 -mfpu=neon -mfloat-abi=softfp)
- Compiled with O3 optimization level (-O3)
- Performed interprocedural pointer analysis and interprocedural modification and reference analysis (-fipa-pta)
- Performed loop invariant motion on trees. It also moved operands of conditions that are invariant out of the loop, so that we can use just trivial invariantness analysis in loop unswitching. The pass also includes store motion (-ftree-loop-im)
- Created a canonical counter for number of iterations in loops for which determining number of iterations requires complicated analysis. Later optimizations then may determine the number easily (-ftree-loop-ivcanon)
- Performed induction variable optimizations (strength reduction, induction variable merging and induction variable elimination) on trees (-fivopts)
- Tried to reduce the number of symbolic address calculations by using shared “anchor” symbols to address nearby objects. This transformation can help to reduce the number of GOT entries and GOT accesses on some targets (-fsection-anchors)
- Assumed that loop indices do not overflow, and that loops with nontrivial exit condition are not infinite. This enables a wider range of loop optimizations even if the loop optimizer itself cannot prove that these assumptions are valid (-funsafe-loop-optimizations)
- Moved branches with loop invariant conditions out of the loop (-funswitch-loops)
- Attempted to avoid false dependencies in scheduled code by making use of registers left over after register allocation. This optimization most benefits processors with lots of registers (-frename-registers)
- Re-ran common subexpression elimination after loop optimizations are performed (-frerun-cse-after-loop)
- Didn't keep the frame pointer in a register for functions that don't need one. This avoids the instructions to save, set up and restore frame pointers; it also makes an extra register available in many functions (-fomit-frame-pointer)
- Made a redundant load elimination pass performed after reload. The purpose of this pass is to clean up redundant spilling (-fgcse-after-reload)
- Ran a store motion pass after global common subexpression elimination. This pass attempts to move stores out of loops (-fgcse-sm)
- Eliminated redundant loads that come after stores to the same memory location, both partial and full redundancies (-fgcse-las)
- Constructed webs as commonly used for register allocation purposes and assigned each web individual pseudo register. This allows the register allocation pass to operate on pseudos directly, but also strengthens several other optimization passes, such as CSE, loop optimizer and trivial dead code remover (-fweb)
- Performed tail duplication to enlarge superblock size. This transformation simplifies the control flow of the function allowing other optimizations to do a better job (-ftracer)

Download


What to expect:
- Awesome stock battery life on AOSP ROMs (due to Samsung sources and not smdk4x12)
- Blazing fast (Deep advanced optimizations, Linaro toolchain, this is the beast)
- High compatibility (AnyKernel method, the kernel should work on all ROMs)

What to expect in future:
- Upstreaming to Linux 3.2, 3.4, 3.10 (When I have enough time and coffee)
- You tell me

What to NOT expect:
- Many CPU or I/O governors # We don't need overhead, you can achieve nearly the same just by tweaking governor to your needs
- Features I don't like/need
- Dualboot (see above ^)
- F2FS (see above ^, however this one depends on kernel upstreaming, as f2fs is merged)

Flashing instructions:
1. Make sure that you have stock kernel already flashed (the one which comes with your ROM), if you're running custom kernel already, reflash your ROM without wipe, this will also flash stock kernel. This is ultimately important, DON'T FLASH ARCHIKERNEL ON ANOTHER CUSTOM KERNEL, you may face various issues you've never seen before.
* This is because ArchiKernel uses AnyKernel method - it pulls ramdisk from your current kernel. If you brick your phone by flashing AK on top of custom kernel, you know who will be responsible for that.
2. Flash ArchiKernel zip.
3. Profit!

Updating instructions:
1. If you arleady have older ArchiKernel version flashed properly with above instructions, and changelog doesn't state otherwise, just flash the .zip with new version of AK.
2. No wipes, cleaning dalvik cache or anything else is required, flashing zip is enough.
3. Profit!

Bugs:
None known

XDA:DevDB Information
[KERNEL] [AOSP/Samsung/ArchiPort] [Linaro 4.9.2] [07/10/14] ArchiKernel V1.5 | BEAST, Kernel for the Samsung Galaxy S III I9300

Contributors
JustArchi, Moster2
Kernel Special Features:

Version Information
Status: Alpha

Created 2014-06-17
Last Updated 2014-10-06
Last edited by JustArchi; 17th October 2014 at 11:27 PM.
The Following 181 Users Say Thank You to JustArchi For This Useful Post: [ View ]
17th June 2014, 03:09 AM   |  #2  
JustArchi's Avatar
OP Recognized Contributor / Recognized Developer
Flag Warsaw
Thanks Meter: 23,230
 
6,948 posts
Join Date:Joined: Mar 2013
Donate to Me
More
Reserved
The Following 27 Users Say Thank You to JustArchi For This Useful Post: [ View ]
17th June 2014, 03:09 AM   |  #3  
JustArchi's Avatar
OP Recognized Contributor / Recognized Developer
Flag Warsaw
Thanks Meter: 23,230
 
6,948 posts
Join Date:Joined: Mar 2013
Donate to Me
More
Reserved
The Following 25 Users Say Thank You to JustArchi For This Useful Post: [ View ]
17th June 2014, 03:13 AM   |  #4  
JustArchi's Avatar
OP Recognized Contributor / Recognized Developer
Flag Warsaw
Thanks Meter: 23,230
 
6,948 posts
Join Date:Joined: Mar 2013
Donate to Me
More
Last one.
The Following 28 Users Say Thank You to JustArchi For This Useful Post: [ View ]
17th June 2014, 03:14 AM   |  #5  
Senior Member
Flag Buenos Aires, Argentina
Thanks Meter: 363
 
757 posts
Join Date:Joined: Dec 2012
More
Great job! Amazing to see a dedicated thread for this beauty.
The Following User Says Thank You to Choristav For This Useful Post: [ View ]
17th June 2014, 03:16 AM   |  #6  
daringsmart's Avatar
Senior Member
Flag madurai
Thanks Meter: 83
 
450 posts
Join Date:Joined: Jun 2012
More
Will report the experience
Last edited by daringsmart; 17th June 2014 at 03:18 AM.
17th June 2014, 03:18 AM   |  #7  
JustArchi's Avatar
OP Recognized Contributor / Recognized Developer
Flag Warsaw
Thanks Meter: 23,230
 
6,948 posts
Join Date:Joined: Mar 2013
Donate to Me
More
V1 uploaded in download section on the top of the thread. It should work with all AOSP ROMs but you tell me if it does. Don't flash it on Sammy (yet). Let me know if I screwed up something, it's late .
The Following 12 Users Say Thank You to JustArchi For This Useful Post: [ View ]
17th June 2014, 03:36 AM   |  #8  
hwjrmrm's Avatar
Senior Member
Thanks Meter: 172
 
673 posts
Join Date:Joined: Jan 2013
will test on omni,thanks
17th June 2014, 03:43 AM   |  #9  
coto39's Avatar
Senior Member
Flag Tandil
Thanks Meter: 180
 
571 posts
Join Date:Joined: Aug 2011
More
Well, I've been waiting for this thread since I read about "ArchiKernel" =D

I installed the kernel just a few minutes ago and I will test during this days to see how it behaves.

Q: Will you add support to customize it with an app (like TricksterMod, Stweaks or BoefflaConfig)? I'm just asking because I'm curious, I know is to early in development stage already to have this, but I just wanted to know :P

Thanks!
17th June 2014, 03:47 AM   |  #10  
JustArchi's Avatar
OP Recognized Contributor / Recognized Developer
Flag Warsaw
Thanks Meter: 23,230
 
6,948 posts
Join Date:Joined: Mar 2013
Donate to Me
More
Quote:
Originally Posted by coto39

Well, I've been waiting for this thread since I read about "ArchiKernel" =D

I installed the kernel just a few minutes ago and I will test during this days to see how it behaves.

Q: Will you add support to customize it with an app (like TricksterMod, Stweaks or BoefflaConfig)? I'm just asking because I'm curious, I know is to early in development stage already to have this, but I just wanted to know :P

Thanks!

At some point I'll definitely consider adding ArchiKernel support in ArchiDroid app, but it won't come too fast.

However, you can still "tweak it' in various ways. SetCPU, TricksterMod and similar apps are only a few examples. Boeffla Sound Control app (not boeffla config) will work as well. But think twice if you want to do, as ArchiKernel is pretty damn tweaked right after booting.

The Following 7 Users Say Thank You to JustArchi For This Useful Post: [ View ]
Post Reply Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes


Top Threads in Galaxy S III Android Development by ThreadRank