But a problem occurs like this.Yes !
But maybe I should turn to DTC's thread for help?
Attachments
-
266.6 KB Views: 1,104
But a problem occurs like this.Yes !
Would like to know how to compile a ROM with DTC except merge the commit mentioned in the DragonTC Thread ?
Yes !
This has nothing to do with the development of Kryo-AICP. Discuss such things in private chat or the DTC thread in the Android Development sub-ForumBut a problem occurs like this.
But maybe I should turn to DTC's thread for help?
why, did you even started allready?Development already dead?
I'm just getting started .why, did you even started allready?![]()
Sorry. Don't wanna sound rude. But all these are compiler related (no ArchiDroid in what you mentioned, only GCC stuff https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html) and atleast the things you mentioned won't have any affect on user. Also the optimizations might be a bad thing infact as they aren't up to date for msm8996. And again, the things you mentioned will just affect you while building and almost 0 effect to users. Been there. Done that.I'm just getting started .
Dragon TC Clang caused a lot of errors and messed up the new build again , and again , so I came up with the decision to build with Archidroid optimizations , which are more stable , will build with DTC once it is more stable .
Here is a list of important improvements with next build :
Quote:
- Optimized for speed yet more all instructions - ARM and THUMB (-O3)
- Optimized for speed also parts which are compiled with Clang (-O3)
- Turned off all debugging code (lack of -g)
- Eliminated redundant loads that come after stores to the same memory location, both partial and full redundancies (-fgcse-las)
- Ran a store motion pass after global common subexpression elimination. This pass attempts to move stores out of loops (-fgcse-sm)
- Enabled the identity transformation for graphite. For every SCoP we generate the polyhedral representation and transform it back to gimple. We can then check the costs or benefits of the GIMPLE -> GRAPHITE -> GIMPLE transformation. Some minimal optimizations are also performed by the code generator ISL, like index splitting and dead code elimination in loops (-fgraphite -fgraphite-identity)
- Performed interprocedural pointer analysis and interprocedural modification and reference analysis (-fipa-pta)
- Performed induction variable optimizations (strength reduction, induction variable merging and induction variable elimination) on trees (-fivopts)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- Sorted the common symbols by alignment in descending order. This is to prevent gaps between symbols due to alignment constraints (-Wl,--sort-common)
So hang on , new build WILL be up the day after tomorrow .
Lots more to come with Kryo-AICP !
Also I'm responsible for optimizations on Atomic-ROM , be sure to check that out , if you wanna go AOSP . It will be up in a week or two !
O3 and graphite , though are known to improve performance on a lot of devices , we'll see however how well it works on msm8996 , I think it may give us a significant performance bump ! I'll also compile with Dragon TC , once its more stable !Sorry. Don't wanna sound rude. But all these are compiler related (no ArchiDroid in what you mentioned, only GCC stuff https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html) and atleast the things you mentioned won't have any affect on user. Also the optimizations might be a bad thing infact as they aren't up to date for msm8996. And again, the things you mentioned will just affect you while building and almost 0 effect to users. Been there. Done that.
Just a friendly word, focus on device tree and kernel optimizations and they are the biggest things that affect users.
And again, all these optimizations have known to have 0 impact on other SOCs.
Rest, it is your rom, but believe me, you will have 0 results with these and good results with device tree improvements.
Regards and Enjoy !
Sent from my OnePlus2 using XDA Labs
hi mate, so i got to say @Naman Bhalla is a cool dev to checked his git for a few weeks/days because RR rom, and i "remember" on yours for the Opo but Naman got right also, these opts were there for "low" resource devices basically, and "just my 5cent" on op3 the problem is that the trees/roms are not using the existing hw. resources, and not how that they need opt. to use the already outlasted resources.O3 and graphite , though are known to improve performance on a lot of devices , we'll see however how well it works on msm8996 , I think it may give us a significant performance bump ! I'll also compile with Dragon TC , once its more stable !
i found that rude .... and everyone has the possibility to learn how to cook roms so i asked Roughnecks :Development already dead?
but its nice to know thatwhy, did you even started allready?![]()
I'm just getting started .
keep up Manav i really enjoyd your rom on the opo so just take your time @Manav Bhagia![]()
I think its not dead but very slow.So development here is dead or just WIP?
Works flawlessly. I have it running and find the ROM much smoother.is elemental x works with this rom ?