Patched libsqlite.so to disable sync and improve SQLite performance - Asus Eee Pad Transformer Prime

Based on this thread:
http://forum.xda-developers.com/showthread.php?t=1595531
and this one:
http://forum.xda-developers.com/showthread.php?t=903507
After quite some reading and messing about it worked...
I have patched sqlite3.c from CM9 ICS source and recompiled CM9 (for nexus, the tutorial used that one... but files seem interchangable).
!!!WARNING!!!
!!!Use this at your own risk! I will not be responsible for any messed up primes, errors and/or loss of data!!!
This can mess up your prime! Only do this if you have a working CWM backup and can restore that backup from recovery! Root is required at this time to replace the files...
I have no idea what this does with data integrity, if you value your data extremely it might be wise not to try this!
!!!WARNING!!!
*RISK*
As explained by Hobbesian in this post: http://forum.xda-developers.com/showpost.php?p=27121811&postcount=39
Fsync off means that SQLite is unbound by the need to check that data has been written to disk successfully, it also means the operating system can freely re-order the writes before they are comitted to flash memory, which in the event of a hardlock will very likely result in database corruption, of the unrecoverable sort.
Fsync in itself is often used -deliberately- to incur an I/O buffer, so whilst it might seem like a great idea to turn it off, what you're essentially doing is risking the CPU going faster than the device controller can write to memory. This is bad. I cannot begin to imagine how many klaxons would go off if you're working on something remotely important and use this patch.
*RISK*
I hereby attach the zip containing the libsqlite.so and libsqlite_jni.so.
1. Copy the files (using root explorer for example) to the /system/lib folder, replacing the original files. (Mount that folder as RW if necessary).
2. Set permissions to the same as the other files, rw-r--r--.
3. Reboot.
If something went wrong your prime will not boot but will be stuck at the booting screen, in that case recover to a working backup using CWM.
SQLite benchmark went from 100+ secs to 20-25 seconds. Quadrant IO bench improved as well.
Have yet to decide on realtime performance but I actually believe the internal memory is pretty mediocre, physically... So this only helps partially in that case.

It's fun to play with sync settings but not if you value your data. I would strongly advise against it except for testing and benchmark purposes...

Thanks, but Iḿ awarre of possible consequences... But I believe the conclusion in earlier versions was that, even though there are indeed risks, they aren't as huge as you'd might expect. Mainly with unexpected reboots or shutting down the risk is big(ger).
But even if itś just for testing/benching... I would still very much like to see the results.
Btw, it should be ARM v7 even... that is the proper instruction set. Updated starting post.

Ugh, got it to build for arm-v7a but of course it looks (completely) different from the module with the prime. Structure the same, but compiled different enough. So thought I'd compule the library and install it on the prime but that resulted in the prime not booting...
Hmmm

I'd love to help, but I have zero knowledge in anything SQLite...
I wish you good luck!
I think everyone is hoping that the slow random write speeds are purely software related. And it makes sense that they are. The SQLite benchmarking thread is giving a lot of details on what is making our performance so sluggish, but not why.

Next step, compile complete CM9 source (hopefully including libsql src ) so I can use that as a base...
Copying the libsqlite.so and libsqlite-jni.so from an AOKP rom worked fine, so perhaps this is a (not the easiest) way to get things to work.
And ah well, otherwise I learnt how to compile a rom

xTRICKYxx said:
I'd love to help, but I have zero knowledge in anything SQLite...
I wish you good luck!
I think everyone is hoping that the slow random write speeds are purely software related. And it makes sense that they are. The SQLite benchmarking thread is giving a lot of details on what is making our performance so sluggish, but not why.
Click to expand...
Click to collapse
Same here, thanks for taking time out to tinker with our primes...........hmm, im not intirelly sure if i should refrase that???
GD LUCK

dagrim1 said:
Next step, compile complete CM9 source (hopefully including libsql src ) so I can use that as a base...
Copying the libsqlite.so and libsqlite-jni.so from an AOKP rom worked fine, so perhaps this is a (not the easiest) way to get things to work.
And ah well, otherwise I learnt how to compile a rom
Click to expand...
Click to collapse
Are you actually changing rom code to remove fsync?

hairdewx said:
Are you actually changing rom code to remove fsync?
Click to expand...
Click to collapse
Ehm, basically... Not rom code itself but one of the libraries in the rom (for which I hope the code is in there as well).
Background info:
http://forum.xda-developers.com/showthread.php?t=1000899
Android phones as the underlying database using sqlite3. sqlite3 writes efficiency is very low, because the sync feature turned on by default, and fsync() must be performed after each insertion, the resulting system efficiency is low, and the disk life is reduced.
I try to disable sync feature by default in exchange for greater IO performance and reduce disk consumption. While doing so may result in data integrity problems, but I still like to use it because most of the sqlite insert action can be completed within a few seconds, not too much to consider issues such as sudden power-down.
After modified, the time of insert 2000 records to sqlite3 db, from 1m11s reduce to 2s.
-----------------------------
With Android applications, the database operation is non-persistent, normal step in app is:
1.open db
2.do read/write
3.close db
with step3, the data in cache will be flush to disk. so user will not notice any sudden lag, always smooth.
With SYNC-ON, the db operation like this:
1.open db
2.1. write a record/do a transcation
2.2. fsync()
2.3. write a record/do a transcation
2.4. fsync()
.....
3.close db/fsync()
with SYNC-OFF, operation like this:
1.open db
2.1 write a record/do a transcation
2.2 write a record/do a transcation
....
3. close db/fsync()
So, no-sync can significantly save IO time.
Click to expand...
Click to collapse
Patch for libsqlite.c:
http://forum.xda-developers.com/showpost.php?p=12695464&postcount=1966
Code:
diff -urNp external/sqlite/dist.origin//sqlite3.c external/sqlite/dist//sqlite3.c
--- external/sqlite/dist.origin//sqlite3.c 2011-01-07 15:26:32.000000000 +0800
+++ external/sqlite/dist//sqlite3.c 2011-01-07 15:27:55.000000000 +0800
@@ -34761,7 +34761,7 @@ SQLITE_PRIVATE int sqlite3PagerOpen(
pPager->readOnly = (u8)readOnly;
/* pPager->needSync = 0; */
assert( useJournal || pPager->tempFile );
- pPager->noSync = pPager->tempFile;
+ pPager->noSync = 1;
pPager->fullSync = pPager->noSync ?0:1;
pPager->sync_flags = SQLITE_SYNC_NORMAL;
/* pPager->pFirst = 0; */
@@ -65838,7 +65838,7 @@ static void attachFunc(
sqlite3PagerLockingMode(pPager, db->dfltLockMode);
sqlite3PagerJournalMode(pPager, db->dfltJournalMode);
}
- aNew->safety_level = 3;
+ aNew->safety_level = 1;
aNew->zName = sqlite3DbStrDup(db, zName);
if( rc==SQLITE_OK && aNew->zName==0 ){
rc = SQLITE_NOMEM;
@@ -97124,7 +97124,7 @@ static int openDatabase(
** database it is 'NONE'. This matches the pager layer defaults.
*/
db->aDb[0].zName = "main";
- db->aDb[0].safety_level = 3;
+ db->aDb[0].safety_level = 1;
db->aDb[1].zName = "temp";
db->aDb[1].safety_level = 1;
So the basic idea is to limit IO-interaction by disabling fsync.

Interesting, I figured it would have been in one of the kernel modules.

Ok, I have been able to compile the CM9 source (for the galaxy nexus, because the tutorial was for that one) including the sqlite source...
First test was now 36,6 secs which is pretty nice, have to check for other issues (and will compile for TF201 if I can soon). The semi patch caused a number of force closes so we'll have to see how this one goes.
But at least happy I was able to compile

Wow ... thanks for posting this ... I've edited the sqlite source and compiled the binary for AOKP B38 below are my setup details and test results. So far everything is stable, no FCs in the past 45 min and things are much faster. I have no idea whats up with Antutu's SD Card reads, that's outrageously high lol ... Can't say I trust that ;o) . Otherwise great hack. I wouldn't recommend running this if you have a need for solid data stability, I haven't seen anything yet, but ending all those syncs may cause problems down the road, I don't know. Since I flash regularly I don't really mind it, loving the speed! Also found some other sqlite optimization tips( Cache size and some others ) I may try to add in after I run it for a day as is and see how stability is. Again, thanks to the OP, great find!( so far )
Code:
Device: Transformer Prime(TF201)
ROM: AOKP B38
Kernel: Motleys running at 1.8 set to performance governer for testing
Tests: ( All tests done Run 1 after fresh boot, Run 2 immediatly after, all set to performance governer )
Couldn't get the damn formating to look right in the post ... check the image for results.

RubenRybnik said:
Wow ... thanks for posting this ... I've edited the sqlite source and compiled the binary for AOKP B38 below are my setup details and test results. So far everything is stable, no FCs in the past 45 min and things are much faster. I have no idea whats up with Antutu's SD Card reads, that's outrageously high lol ... Can't say I trust that ;o) . Otherwise great hack. I wouldn't recommend running this if you have a need for solid data stability, I haven't seen anything yet, but ending all those syncs may cause problems down the road, I don't know. Since I flash regularly I don't really mind it, loving the speed! Also found some other sqlite optimization tips( Cache size and some others ) I may try to add in after I run it for a day as is and see how stability is. Again, thanks to the OP, great find!( so far )
Code:
Device: Transformer Prime(TF201)
ROM: AOKP B38
Kernel: Motleys running at 1.8 set to performance governer for testing
Tests: ( All tests done Run 1 after fresh boot, Run 2 immediatly after, all set to performance governer )
Couldn't get the damn formating to look right in the post ... check the image for results.
Click to expand...
Click to collapse
What about actual use performance? Is web browsing lag gone? What about switching apps?
I'm a little hesitant about the data stability... with my luck I'll have rock solid stability until the ONE TIME I actually need it and lose important data

Updated main post...

This should be in dev section?
Looks promising, thanks OP.

Sounds very promising. Rooted people, start testing!

sweet. going to try it tonight!
---------- Post added at 01:33 PM ---------- Previous post was at 01:13 PM ----------
RubenRybnik said:
Wow ... thanks for posting this ... I've edited the sqlite source and compiled the binary for AOKP B38 below are my setup details and test results. So far everything is stable, no FCs in the past 45 min and things are much faster. I have no idea whats up with Antutu's SD Card reads, that's outrageously high lol ... Can't say I trust that ;o) . Otherwise great hack. I wouldn't recommend running this if you have a need for solid data stability, I haven't seen anything yet, but ending all those syncs may cause problems down the road, I don't know. Since I flash regularly I don't really mind it, loving the speed! Also found some other sqlite optimization tips( Cache size and some others ) I may try to add in after I run it for a day as is and see how stability is. Again, thanks to the OP, great find!( so far )
Click to expand...
Click to collapse
Regarding your screenshot, the 1k inserts: After the SQL Patch those scores are on par with the other devices where we've seen benchmarks from (less than 1 second, which is literally 100 times better.. )
I don't believe in coincidence
Can it be that on those devices FSync is allready disabled, or bypassed only in some cases?
Anyhow i am realy curious if this makes stuff feel better

Tempie007 said:
Regarding your screenshot, the 1k inserts: After the SQL Patch those scores are on par with the other devices where we've seen benchmarks from (less than 1 second, which is literally 100 times better.. )
I don't believe in coincidence
Can it be that on those devices FSync is allready disabled, or bypassed only in some cases?
Anyhow i am realy curious if this makes stuff feel better
Click to expand...
Click to collapse
Posted this in the TFP's AOKP thread in that 'other' forum:
I'm seeing some great results personally. Chrome on prime seems really responsive, apps launch pretty much instantly, haven't seen a desktop redraw on Nova the whole time. I have an image folder with about 300 wallpaper images, opening that in quickpic in the past has been pretty slow( several seconds ), now that is almost instantly done, all thumbnails before I blink lol.
Now I'm not saying this is all the sql patch I did at all, unfortunately I didn't put much time into using Montleys new kernel in a 'real world' case, I only benchmarked with his kernel then applied sql patch and benchemarked again( still using his kernel ). So perhaps I'll flash back tonight just to see if I can gauge how much the patch vs kernel is doing.( Thanks again Motley! ).
As for side effects, I installed Chrome last night so I could test, had about a 2 second freeze at the end of it installing, but came back and was fine after. Haven't seen any other freezes. I did 'loose' wifi for about 20 min last night. I was connected to the wifi the entire time, but even a reboot and net wouldn't work on the Prime, not sure what happened, or if it's related, but seemed to have 'fixed' itself after 20 min last night.
Click to expand...
Click to collapse

Tempie007 said:
sweet. going to try it tonight!
---------- Post added at 01:33 PM ---------- Previous post was at 01:13 PM ----------
Regarding your screenshot, the 1k inserts: After the SQL Patch those scores are on par with the other devices where we've seen benchmarks from (less than 1 second, which is literally 100 times better.. )
I don't believe in coincidence
Can it be that on those devices FSync is allready disabled, or bypassed only in some cases?
Anyhow i am realy curious if this makes stuff feel better
Click to expand...
Click to collapse
If it is, it is not done in the library itself...
I also tried the libsqlite files from the SGS3 for example and copied them to the prime, but that didn't help much... So if fsync is handled differently on those devices it is done in a different place.
This is just a workaround for (part of) the problem... The real issue is elsewhere. I mean, the CM9/AOKP/AOSP roms use the same source for the differnt devices yet the issues are not the same on all of them.
So somewhere in the kernel code? Or another level, the controller for example. As the HTC One X performs decent it seems that it's not (JUST) the tegra3 but some of the other components.
Ah well, maybe tonight I can try the full wipe and reinstall and see if that helps anything.
Booting time doesn;t improve with this mod, titanium restores improve a bit but nothing extreme (20-25% faster is my guess) so there IS more going on. My guess is the used memory is at least part of the problem.
Some SD benchmarking indicating the memory used isn't the best one :/ (Done with the 'Device Performance' benchmarking app)
Asus TF201:
[email protected]/mnt/sdcard (=internal)
Max Write: 14,4
Mean Write: 12,1
Min Write: 9,4
Max Read: 28,8
Mean Read: 23,2
Min Read: 14,9
[email protected]/Removable/MicroSd (=external)
Max Write: 14,7
Mean Write: 11,4
Min Write: 9,9
Max Read: 14,6
Mean Read: 12,7
Min Read: 9,0
SGS3:
[email protected]/mnt/sdcard (=internal)
Max Write: 26,7
Mean Write: 25,3
Min Write: 23,9
Max Read: 43,8
Mean Read: 42,2
Min Read: 39,4
[email protected]/mnt/extSdCard (=external)
Max Write: 10,6
Mean Write: 10,0
Min Write: 9,6
Max Read: 13,8
Mean Read: 10,6
Min Read: 6,2

Is it possible to make an intelligent fsync where it basically syncs after some clock time after the last db write or inserts an fsync with a high count of writes?

Related

Rom Benchmarking For Topaz |'Official' Benchmarks |User Submitted Benchmarks|Accurate

This thread is for the submission and viewing of ROM benchmarks. There are two sections of this post: One for the Official ROM Benchmarks, and one for user submitted benchmarks. This will help us get a more accurate representation of the 'Real' benchmark.
'Official' Benchmarks
-----------------------------------------------------------------------------------------------------
These benchmarks are taken by Scabes24. He fallows a more strict set of rules and posts a more exact representation of ROM speeds. Please use this in conjunction with the User Submitted benchmarks to compare ROMs for speed.
This won't be updated constantly,(Will be updated Monthly) so we encourage you to submit your benchmarks in order to keep things fresh around here.
Click here to view the 'Official' benchmarks
User Submitted Benchmarks
-----------------------------------------------------------------------------------------------------
These Benchmarks are submitted by other XDA-Developers users for us to read. These Benchmarks will be up to date (Hopefully), and the rom date will be on the benchmark submission. These spreadsheets will be STRICTLY Moderated so no bogus gets in there. Remember, some of these benchmarks may not be 100% accurate, because it may differ from device to device (but most likely won't). If you need help, just shoot me a PM.
Please Note: The numbers in this spreadsheet are the time in Milliseconds, and not a 'Score'. The lower the number, the better.
Spreadsheet Link (Results)
IF YOU SUBMIT A BENCHMARK, PLEASE "TEST" THE ROM WITHOUT ANY MODS!
Submitting a Benchmark
1. Flash a new ROM and do a hard reset.
2. Go into airplane mode
3. Disable switching screen off and turning the topaz off
4. DO NOT CHANGE ANY SETTINGS!
5. Install SPB Benchmark (Download HERE, and it IS freeware!)
6. Reboot (soft-reset)
7. Run SPB Benchmark : Select the "Main Test" option, and disable external software tests like word and IE or file explorer (whole category)
8. Submit results using this form.
Changes for 'Official' Benchmarks
Code:
[SIZE=6][COLOR=red][B]Changelog[/B][/COLOR][/SIZE]
[B][SIZE=4][COLOR=green][U][COLOR=Black]Changes 9/6/10[/COLOR][/U][/COLOR][/SIZE][/B] [B][COLOR=Red]*[/COLOR]Will be updating over the next few days[COLOR=Red]*[/COLOR][/B]
•If anyone would like any [B]stock/shipped ROMs[/B] tested let me know.
[B][SIZE=4][COLOR=Green][U][COLOR=Black]Changes 7/30/10[/COLOR][/U][/COLOR][/SIZE][/B]
•Added [B]Energy CHT[/B] - [B]DinikGlass[/B] 23673/21911 (July 17) - 23121 (July 21)
•Added [B]Energy[/B] [B]Standard Sense[/B] 23673/21911 (July 17)
•Added [B]Energy[/B] [B]Titanium[/B] and [B]Sense 2.1[/B] 23569/21911 July 14
•Added [B]Energy[/B] [B]Standard Reference[/B] 23673/21911 (July 17)
•Added [B]Energy[/B] [B]GTX[/B] 23121 (July 21)
•Added [B]NhatHoa 4.0[/B] 23128 (July 18)
•Added [B]Dutty's HG R15[/B] 23569/21905 (May 31)
•Added [B]Dutty's Nu Era V1 Redemption[/B] 23128 (July 23)
•Added [B]LouMeiYin Yin.09[/B] 23568/21905 (June 11)
•Added [B]QBUS22[/B] 23569/21909 (July 12)
•Added [B]Melissa v0.3A[/B] 21887 (July 8)
•Added [B]MaryOne[/B] 23128/23569/21907 (July 15)
•Added [B]Tess Prime V[/B] 21907 (June 30)
•Added [B]NullPointer Evo v3.5[/B] 23569/21907 (June 28)
•Added [B]Cheetah 4.3r[/B] 21901 (July 20)
•Added [B]Cancer TIR-2[/B] (July 2) and [B]TIR-3[/B] (July 10)
•Added [B]Avatar IV[/B] 23128 (July 19) and 21911 (July 20 - in progress)
•Added [B]TopazNihon[/B] 21911 (July 19) (in progress)
•Added [B]Googy ROM v3.4[/B] 219xx (June 14) (w/ RAM Cab)
•Added [B]Column[/B] - '[B]Average[/B]' of columns H-Z ([B]NOT an overall score[/B])
•Added [B]Column[/B] - '[B]Sum[/B]' of columns H-Z ([B]NOT an overall score[/B])
•Added [B]Column[/B] - '[B]Overall Score[/B]' - (still calculating)
•Added [B]Column[/B] - '[B]Free RAM on first boot[/B]'
•Added [B]Column[/B] - '[B]Free Storage on first boot[/B]'
And it would be great to have some kind of spreadsheet formula to calculate the rating of each test (average function, maybe?). Just for us to know which ROM is the fastest, overall.
This initiative is great!
Guys, a benchmark is a benchmark, you must try the ROM for a week and decide for yourself.
I think most people that aren't very interested in each specific benchmark test would much rather see some type of 'Overall score' for each ROM, so if someone knows of a simple formula or way to average the benchmark scores and place them on a 1-10ish scale (based on speed and possibly graphics) please PM me and I will add the stats.
Scabes24 said:
I think most people that aren't very interested in each specific benchmark test would much rather see some type of 'Overall score' for each ROM, so if someone knows of a simple formula or way to average the benchmark scores and place them on a 1-10ish scale (based on speed and possibly graphics) please PM me and I will add the stats.
Click to expand...
Click to collapse
you can try make it like in previous benchmarking thread - relate to the fastest score of each column as 100% and others as "current"*100/fastest but for overall score need to know which of the colums really effects performance feeled by user to give em priority in overall score
bnm7bnm said:
you can try make it like in previous benchmarking thread - relate to the fastest score of each column as 100% and others as "current"*100/fastest but for overall score need to know which of the colums really effects performance feeled by user to give em priority in overall score
Click to expand...
Click to collapse
Yeah I was trying to figure out how to determine what the 'best/max' score would be, going with the current highest/fastest score for each column (or even groups of columns) should work. As far as overall I was thinkin of seperating it into 2 or 3 scores. one for read/write/copy speed and maybe another for graphics.. but you are right, I would need to know which ones effect performance. Also I'm not quite sure how much of an affect the different (21xxx vs 23xxx) builds have on the stats.
I put the average and sum of the columns (except free RAM and storage) for a few energy ROMs, Dutty's Redemption, and Cheetah to see if it they were comparable and accurate to performance but havn't looked at them enough yet, most likely meaningless.
ThaDeanesta said:
I will do this. First, however, we need benchmarks to make the score. I will handle everything =].
Click to expand...
Click to collapse
Not think, thats right way: all b/m must be at the same device, this the same condition (like disabled manila, sound, phone, phone canvas, the same time after flash/boot etc.).
Devices use different nand sometimes, with diff FS speed. So for compare roms, you need to use the same device.
It's creazy work.
Pietrucci did use it before. Ask him, how right to interpret results.
(the every test element have the own "weight" in the test. Need the special formula for calculate).
mondilv said:
Not think, thats right way: all b/m must be at the same device, this the same condition (like disabled manila, sound, phone, phone canvas, the same time after flash/boot etc.).
Devices use different nand sometimes, with diff FS speed. So for compare roms, you need to use the same device.
It's creazy work.
Pietrucci did use it before. Ask him, how right to interpret results.
(the every test element have the own "weight" in the test. Need the special formula for calculate).
Click to expand...
Click to collapse
Yes, this is true. There is a special formula for this. Piertrucci knows this, so it is a good idea to ask him instead of doing the same work twice.
i have scabes24 doing everything on the same device
Hello!
When you do a benchmark with SPB Benchmark this generates an XML file that can be uploaded on the website of SPB and compare with other devices. It also lets us do a custom table of devices and gives the% of one over the other in each test.
So if you still have all generated XML can be loaded into SPB under section Benchmark>Visualice Test Results(on the left column) and will be much easier to see which is better.
I'm Spanish my good english mercy to Google
LLKS said:
Hello!
When you do a benchmark with SPB Benchmark this generates an XML file that can be uploaded on the website of SPB and compare with other devices. It also lets us do a custom table of devices and gives the% of one over the other in each test.
So if you still have all generated XML can be loaded into SPB under section Benchmark>Visualice Test Results(on the left column) and will be much easier to see which is better.
I'm Spanish my good english mercy to Google
Click to expand...
Click to collapse
good idea.
I actually do have most of the XMLs, ill take a look. I was also thinkin about that a while back.
Hi!
I was lookin how the sistem rates and I think that the results all are in milisecond. Then the lower of all sums is the speedy ROM.
BUT I think som results have more weight in the result.
For example Arkball test measures ms between. An speedy ROM has a resul of 3 and a slow one has 12. But this is nothing wen compared to the time spend in list 2000 files (2-3 thousand)
If we want to compare the scores with a formula i think we have to determine how make som values weigth in more than others.
Sorry for my english
LLKS said:
Hi!
I was lookin how the sistem rates and I think that the results all are in milisecond. Then the lower of all sums is the speedy ROM.
BUT I think som results have more weight in the result.
For example Arkball test measures ms between. An speedy ROM has a resul of 3 and a slow one has 12. But this is nothing wen compared to the time spend in list 2000 files (2-3 thousand)
If we want to compare the scores with a formula i think we have to determine how make som values weigth in more than others.
Sorry for my english
Click to expand...
Click to collapse
yes, the user of xda, pietrucci had the formula, but i think it is possible to make a new one, with only logic and ponderation of all the factors, or the most important at least.
Yeah I tried contacting pietrucci a while ago with no response.
We discussed this before, the simple way would be to mark the highest and lowest scores for each column and place them on a grading scale from 1-100 (1-X). Could be done without the XML docs. Then graph it ..or just grade each ROM with a number.
But yeah we would have to figure out which tests are relevant to speed. I personally don't know enough about each specific test to figure that out. Maybe ThaDeanesta would know a bit more.
Scabes24 said:
Yeah I tried contacting pietrucci a while ago with no response.
We discussed this before, the simple way would be to mark the highest and lowest scores for each column and place them on a grading scale from 1-100 (1-X). Could be done without the XML docs. Then graph it ..or just grade each ROM with a number.
But yeah we would have to figure out which tests are relevant to speed. I personally don't know enough about each specific test to figure that out. Maybe ThaDeanesta would know a bit more.
Click to expand...
Click to collapse
yes of course.
well i think one of the importants are the "copy files" times? for example...
i hope all the people post what they think is relevant to try t make a simple formula that helps in a single view of the numbers to decide. maybe not accurate, but more simple than now.
i know all the data are important but it is kaos ....
well, i have decided my rom for long time ago so, it is basically for helping people here
lmemperador said:
yes of course.
well i think one of the importants are the "copy files" times? for example...
i hope all the people post what they think is relevant to try t make a simple formula that helps in a single view of the numbers to decide. maybe not accurate, but more simple than now.
i know all the data are important but it is kaos ....
well, i have decided my rom for long time ago so, it is basically for helping people here
Click to expand...
Click to collapse
Yeah other users input would be helpful. I'm going to finish updating the latest releases and then I'll mark the highs and lows. Then we can move foward from there
Scabes24 said:
Yeah other users input would be helpful. I'm going to finish updating the latest releases and then I'll mark the highs and lows. Then we can move foward from there
Click to expand...
Click to collapse
yes of course. the people may be invloved in this
*****************************************
i have an idea, can we make a survey to let the people vote for the prefered rom, like this user did in this thread to decide the build?¿?
http://forum.xda-developers.com/showthread.php?t=722602
at the top (view poll results)
also it can be done by google forms
you know, all the peolple said that numbers are numbers but the overall experience with a rom is a fact. so.... they could vote for this.
as we try to improve the benchmarks view.
hope this helps
Things i think are important and why:
Free RAM: If you try to surf the web without memory will go slow. Also Sense will work slow
Directory list of 2000 files: Because if you enter explorer with a slow ROM in this test and you want enter Windows directory it freeze the sistem. Is a shame for that ROM.
File Explorer large Folder List: Same as above.
Arkaball frames per second: For thos who want gaming and may be ¿video?. It depends on the tech used in the game (hardware acceleration¿?)
Things to determine:
Read-Write-Copy: To determine how important it must first determine where copying, whether in RAM or SD.
CPU Test: I think these aren't important because results are very pretty the same.
These are my thoughts.... may be wrong

[ROOTFS.IMG] Modified for lower-class SD cards. *FRX07*

Here I am providing a link for a modified version of the 20110721 rootfs.img. But before anything else, allow me to explain exactly what was modified and why. And also, I'm running FRX07 with the default kernel it came with and the newest rootfs, OC'd to 614.4MHz (although OC doesn't play much factor in this tweak)
During the portion of the boot cycle when it loads the rootfs, at some point the read_ahead_kb (cache on the SD card) is set to 2,048KB as default with the newest rootfs. For higher-end SD cards, this is a good, wholesome number to work with..
With me, I'm running on a 2GB class 2, and using the program SD Booster (free), I was able to switch the read_ahead_kb while running Android. I tried multiple values and noticed the best results with 256KB.
Before with the 2048KB setting, the boot animation would cease a few times for probably a good 6-7 seconds, was terribly laggy throughout, and ultimately, from my experience, the performance of Android was impacted negatively. The system would literally halt while performing basic operations such as opening the Settings menu... although not all the time, still pretty annoying :\
By making this change in the rootfs.img, I noticed that the boot animation was MUCH MUCH smoother. I did not get the aforementioned problem at all using this rootfs.img with my SD card. And I also noticed a nice decrease in boot time, PLUS a pretty hefty boost in performance and stability after the boot even more than when manually changing the value with SD Booster!
I know not all people are running on premium SD cards and that is pretty much the whole point of this thread: to provide people who DON'T have the best with something that could help with their performance.
And for the record, I'm no dev. I just know some bits and pieces and like to share my experiences.
Please post feedback if it helps you!! It makes me feel better lol
ALSO: Before I even thought to post this, I made sure I uninstalled SD Booster to make sure it didn't apply any settings on boot, rebooted the phone into Android, reinstalled SD Booster, and noticed that it was no longer set to 2,048KB as default doesn't hurt to double-check!!
Since you're talking about a 1-line change, it would seem to me to have been far more efficient just to post the single line you changed, rather than make people download a multi-megabyte rootfs img file all over again.
highlandsun said:
Since you're talking about a 1-line change, it would seem to me to have been far more efficient just to post the single line you changed, rather than make people download a multi-megabyte rootfs img file all over again.
Click to expand...
Click to collapse
Good point.. although most people like swapping rootfs.img's and making things easy, plus I already had the rootfs ready for myself.. I figured why not.
But you're right, it would be helpful to know either way, so this is exactly what I did. I opened the init file within the rootfs.img (after mounting in Ubuntu) and searched for "read_ahead_kb" and found it. At the front of the line read: "echo 2048". That's the command that enables the 2,048KB SD cache during boot (the rest of the line I assume is to apply that setting to the SD card? Not sure..). I changed that value to 256KB, making that: "echo 256". Saved the file, unmounted the rootfs, and voila.
maff1989 said:
Good point.. although most people like swapping rootfs.img's and making things easy, plus I already had the rootfs ready for myself.. I figured why not.
But you're right, it would be helpful to know either way, so this is exactly what I did. I opened the init file within the rootfs.img (after mounting in Ubuntu) and searched for "read_ahead_kb" and found it. At the front of the line read: "echo 2048". That's the command that enables the 2,048KB SD cache during boot (the rest of the line I assume is to apply that setting to the SD card? Not sure..). I changed that value to 256KB, making that: "echo 256". Saved the file, unmounted the rootfs, and voila.
Click to expand...
Click to collapse
Interesting. I don't think my card would be considered 'premium', but it is a class4 card.
I'll see if this change makes any difference. IIRC this value was bumped in the newest build to provide better performance, not worse! I guess that's the tradeoff - better performance for some, worse for others... oh well. Thanks for your work!
arrrghhh said:
Interesting. I don't think my card would be considered 'premium', but it is a class4 card.
I'll see if this change makes any difference. IIRC this value was bumped in the newest build to provide better performance, not worse! I guess that's the tradeoff - better performance for some, worse for others... oh well. Thanks for your work!
Click to expand...
Click to collapse
You're very welcome I know the 256kb setting may not work better for all.. but I think this setting is key to how well Android performs on different cards.
Also, I DID notice that OC'ing is much more stable using this setting for my SD.. currently running at 768MHz and minimal instabilities.
Sent from my MSM using XDA App
I appreciate you posting the process you used to figure out optimal settings. I'm toggling between sd tools and sd booster as we speak. I'm still trying different settings. If my settings are different, that'll give me an excuse to figure out that virtualbox build I started on a few months ago.
EDIT: hmmm, I'm not sure sd tools is going to be a useful bench tool. 2 different runs on the same settings vary pretty wildly. I think the meter animations might be interfering with the testing. How did you decide which setting performed best while using sd booster? Were you just going with what felt best?
fortunz said:
I appreciate you posting the process you used to figure out optimal settings. I'm toggling between sd tools and sd booster as we speak. I'm still trying different settings. If my settings are different, that'll give me an excuse to figure out that virtualbox build I started on a few months ago.
EDIT: hmmm, I'm not sure sd tools is going to be a useful bench tool. 2 different runs on the same settings vary pretty wildly. I think the meter animations might be interfering with the testing. How did you decide which setting performed best while using sd booster? Were you just going with what felt best?
Click to expand...
Click to collapse
Personally, I never benchmarked my results.. I would change the kb setting in SD Booster to different values and resume normal operation of the phone (opening programs, checking for any abnormal "halts" during opening/closing animations and general program operation).
Basically, you're right; I found the best setting for my card based on trial-and-error and what felt right, then applied that setting in the rootfs to further increase performance over applying this setting AFTER boot.
Whichever setting feels right to you will most likely yield the best results.
Sent from my MSM using XDA App
maff1989 said:
Good point.. although most people like swapping rootfs.img's and making things easy, plus I already had the rootfs ready for myself.. I figured why not.
But you're right, it would be helpful to know either way, so this is exactly what I did. I opened the init file within the rootfs.img (after mounting in Ubuntu) and searched for "read_ahead_kb" and found it. At the front of the line read: "echo 2048". That's the command that enables the 2,048KB SD cache during boot (the rest of the line I assume is to apply that setting to the SD card? Not sure..). I changed that value to 256KB, making that: "echo 256". Saved the file, unmounted the rootfs, and voila.
Click to expand...
Click to collapse
Should I use DroidExplorer after booting the phone and then should I be looking for a file simply called "init" with no extension - or how do I do it ? It's just that I now see that a new rootfs 20110724 has just been released and since I'm sure it won't be the last, I'd like to know how best to edit these myself
C
championc said:
Should I use DroidExplorer after booting the phone and then should I be looking for a file simply called "init" with no extension - or how do I do it ? It's just that I now see that a new rootfs 20110724 has just been released and since I'm sure it won't be the last, I'd like to know how best to edit these myself
C
Click to expand...
Click to collapse
Yes, the init file will be located in the "/" directory (where you find the /system and /data folders), and in that file, seach for "read_ahead_kb", and once you find that line, go to the bbeginning of that same line and change "echo 2048" to whichever value works best with your SD card.
Personally, I would use a program on the phone such as Root Explorer to modify the file, save, and reboot to have the effects instantly. That would simulate the same process I used to modify the rootfs in Ubuntu.
Sent from my MSM using XDA App
Gee, why all this complicated workaround for something easily done in one line inside froyo.user.conf...
echo "256" > /sys/devices/.....
-- Starfox
Starfox said:
Gee, why all this complicated workaround for something easily done in one line inside froyo.user.conf...
echo "256" > /sys/devices/.....
-- Starfox
Click to expand...
Click to collapse
Um, it's not anymore complicated... Although my wording might have made it seem that way. The only difference was mounting the rootfs.img and changing the value in the init instead of the froyo.user.conf.
maff1989 said:
Um, it's not anymore complicated... Although my wording might have made it seem that way. The only difference was mounting the rootfs.img and changing the value in the init instead of the froyo.user.conf.
Click to expand...
Click to collapse
Well... the user.conf method probably is easier, considering you won't have to change it with any rootfs updates - you can swap rootfs', so long as that entry is in the user.conf file it will always get reapplied.
arrrghhh said:
Well... the user.conf method probably is easier, considering you won't have to change it with any rootfs updates - you can swap rootfs', so long as that entry is in the user.conf file it will always get reapplied.
Click to expand...
Click to collapse
Yeah, that's true, since you put it that way lol. I was simply looking for the most direct way to apply the change, and the modding the rootfs seemed like the logical choice. Tbh I didn't know the user.conf was that significant.. besides applying some user-based settings and whatnot.
Boy I have a LOT to learn...
maff1989 said:
Yeah, that's true, since you put it that way lol. I was simply looking for the most direct way to apply the change, and the modding the rootfs seemed like the logical choice. Tbh I didn't know the user.conf was that significant.. besides applying some user-based settings and whatnot.
Boy I have a LOT to learn...
Click to expand...
Click to collapse
You and me both! I still have quite a bit to learn about how Android has been pieced together on our phones. Doesn't help that I don't really know jack about Android itself .
The user.conf file is quite powerful, assuming you don't need stuff applied too early in the boot process...
arrrghhh said:
You and me both! I still have quite a bit to learn about how Android has been pieced together on our phones. Doesn't help that I don't really know jack about Android itself .
The user.conf file is quite powerful, assuming you don't need stuff applied too early in the boot process...
Click to expand...
Click to collapse
For me, Android as an operating system is easy to understand, since it operates similarly to any computer system. But the fine details like how the rootfs, initrd.gz, kernel, and (most recently) the user.conf work puzzles me like no other. +1 for a Dev Learning Thread!
And yeah, the initrd.gz is what is loaded first, and to my knowledge it's that portion of the boot process that handles the Apps2Ext2/SD function... Fun little tidbit of info
You just need to study init (the file) to find out where everything is located, then adjust what you put into froyo.user.conf. Anything that is done before userinit.sh parses *.user.conf can be manipulated directly, anything after you need to get creative with sed or similar.
Initrd is the INITial Ram Disk. Basically, the kernel when loaded does not have enough to load the whole root/etc. so the initrd contains enough tools to get the kernel to recognize where the rootfs is and load it, then pivotroots with the real root then exec init.
App2sd has nothing to do with initrd. /sdcard/.android_secure, if you look in a real Android handset, is a world-unreadable/inaccessible directory. If you look closer, you notice it's been bind-mounted with those permission to "hide" the content. If you umount it, you have files named *.asec, which is a encrypted (to my knowledge) mini-fs containing the files for each program moved to SD. When Android boots it loopmounts each file to a dir in /mnt/asec or something. I don't think XDAndroid has the necessary stuff that goes through .android_secure yet.
-- Starfox
Starfox said:
You just need to study init (the file) to find out where everything is located, then adjust what you put into froyo.user.conf. Anything that is done before userinit.sh parses *.user.conf can be manipulated directly, anything after you need to get creative with sed or similar.
Initrd is the INITial Ram Disk. Basically, the kernel when loaded does not have enough to load the whole root/etc. so the initrd contains enough tools to get the kernel to recognize where the rootfs is and load it, then pivotroots with the real root then exec init.
App2sd has nothing to do with initrd. /sdcard/.android_secure, if you look in a real Android handset, is a world-unreadable/inaccessible directory. If you look closer, you notice it's been bind-mounted with those permission to "hide" the content. If you umount it, you have files named *.asec, which is a encrypted (to my knowledge) mini-fs containing the files for each program moved to SD. When Android boots it loopmounts each file to a dir in /mnt/asec or something. I don't think XDAndroid has the necessary stuff that goes through .android_secure yet.
-- Starfox
Click to expand...
Click to collapse
Thank you for the information, it's very enlightening
I mentioned Apps2SD because I owned an HD2 and was able to modify the initrd.gz to remove the Apps2SD functionality in a NAND Android ROM.. But thank you again for helping clarify any misunderstandings.
Also, if you have any links/bookmarks to online resources regarding these topics, I'd love for you to share cuz I'd hate to ask questions that could be answered with the right research. Plus, I'm sure you have better things to do with your time than to answer all the questions I have lol
Found this link here on XDA:
Increase Read Cache
I'm using SD Tools and SD Booster to change the cache and test the speed.
Got a class 6 card. Still playing around
großa said:
Found this link here on XDA:
Increase Read Cache
I'm using SD Tools and SD Booster to change the cache and test the speed.
Got a class 6 card. Still playing around
Click to expand...
Click to collapse
I have seen that link a while back; never could get that method to work, though I'm not saying that it doesn't.
From my experience, the difference between using SD Booster and applying the change to the rootfs/user.conf is that the read_ahead_kb, during boot, will impact the remainder of the boot process and furthermore, impact overall performance. That's why, for me, SD Booster simply wasn't cutting it. Although, it was VERY useful in helping me determine which value to place in the rootfs to get the best results.
I've been trying to find a more reliable objective benching tool since sdtools results seem almost random for me. That thread above suggests timing the opening of the gallery, but when I do, not all of the lag appears related to reading the contents of the card -- some of it seems tied up in animations. Anyone have any other ideas?
I actually might try overclocking temporarily if I can't find another card speed bench that less animated. I think the problem with me and sdtools is related to speedometer graphics. It hangs for 15-45 seconds at the beginning of the test while the needle makes its way painfully slowly to the first burst of speed read before continuing the test. Running multiple tests on 2048, 1024, 512 and 256 as set in sd booster, there was almost as much variation at each setting as there was between all the settings.

█║▌│█│║║█║▌ ║▌││ROM ░ NIGHTLY ░ © ★ SYNERGY KINGDOM ★ ™ ░ rev1 ░ 2.3.4 ░ 3.0 SENSE

█║▌│█│║║█║▌ ║▌││ROM ░ NIGHTLY ░ © ★ SYNERGY KINGDOM ★ ™ ░ rev1 ░ 2.3.4 ░ 3.0 SENSE
Synergy-kingdom-3d official nightly folder (click)
​For issues PLEASE report HERE to get fixed
For the list of commits and changes look HERE
CLICK FOR LIVE CHAT WITH ME AND OTHER USERS ON InfectedROM.com
​Kernel
Stock HTC with Modded ramdisk (for now). Make sure to flash radio and such.
Click to expand...
Click to collapse
NOTES
WE DO NOT OVERCLOCK THE CPU BY DEFAULT if you want to OC get setcpu or use the newly included Virtuous OC tools. ONLY USE ONE OR THE OTHER.
Ziggys still getting everything perfect the guy doesnt even have a 3d so hes building kernels blind. Make sure to thank him!
****If you go to another kernel that does not extract our ramdisk you will break our services at least(dropbear/crond/inaydyn), and possibly the whole rom if it doesn't support pause before class start for init.d. please bug your kernel dev for a "universal" method that inserts ramdisk on flash for full compatibility! KERNELS WE HAVE MODIFIED ALREADY IN ABOVE LINK*******
Click to expand...
Click to collapse
FEATURES
Based on RUU_Kingdom_Sprint_WWE_1.19.651.0_Radio_1.11.00.0812_NV_NV_SPCS_2.60_0708_PRL51079_release_209668_signed.exe
Guys this is Commit one it is a PURE stock base no mods YET but you know how fast we commit stuff so stayed tuned
Deodexed
Zipaligned
Debloated
Custom Battery calibration zip (Thanks Seo)
Latest beta of Superuser (Thanks ChainsDD)
Newest version of market
Ramdisk tweaks by team synergy for faster internet and CIQ blocking
Build prop edits for faster call connect and lots more (Thanks Mike1986 for some of these)
Fixed Bluetooth
Fixed Wifi
Fixed Camera & Video
Fixed 4G
Fixed Hardware Acceleration
Fixed GPS
Fixed Audio
Added in Mybackup ROOT guys this app rocks for doing backups if you get the full v
LOTS MORE STAY TUNED!!
Click to expand...
Click to collapse
FIXES/SVN ACCESS
Changelog is always available here - https://code.google.com/p/synergy-kingdom-3d/source/list
Our SVN Checkout address is - http://synergy-kingdom-3d.googlecode.com/svn/trunk/
**sorry if there are any bugs, but please report whatever you see and thell make there way into tomorrows nightly if you want to wait for a signed zip. If you ever want a newer update than whats posted you can also just use a SVN client to check out our google code, zip up your own image and flash. SVN export, SVN update, and svn clean are your friends. Also you will need to convert linebreaks to linux format instead of CR+LF or youll break scripts. see SVN doc for more info.
USING SVN
LiquidSolstice wrote an awesome guide for windows up here(THANKS) - http://forum.xda-developers.com/showthread.php?t=1211234
OTHER OS
I wrote a real simple svn script based on svnkit (java cross platform no install svn client) its barley tested but should do the job. It should get our latest, update export and zip all for you. The batch script is written for windows, but you can open in a text editor and run the same type of commands on *nix or whatever. Post is here - http://forum.xda-developers.com/showpost.php?p=16345186&postcount=662
Click to expand...
Click to collapse
Whats this about Spyware?
HTC has hidden "features" in the framework. this is MORE than just CIQ being removed, there are actually services hard coded in the framework logging regardless. Apparently we all agreed to this _somehow_, even though to actually find any reference to this you need to go pretty deep in settings and LOOK for it.
Go to settings -> about phone -> legal -> htc legal. it explains what is uploaded
If you have ANY files that arent 0k in these folders, your logging is not disabled.
Code:
adb shell ls -l /data/system/usagestats
adb shell ls -l /data/system/appusagestats
adb shell ls -l /data/system/dropbox
Also in logcat you should see this:
Code:
I/SynergyRom( 4221): Trying To Disable DropBox Service
E/SynergyRom( 4221): Failure starting DropBoxManagerService. Horray!
I/SynergyRom( 4221): Trying To Disable User Behavior Logging Service.
E/SynergyRom( 4221): Failure starting UserBehaviorLoggingService. Horray!
Along with a failure if it ever tries to write still for whatever reason:
Code:
UsageStats( 4231): handleMessage msg=1
V/HtcAppUsageStats( 4231): (launch app, package): (HTC Sense, com.htc.launcher)
V/HtcAppUsageStats( 4231): handleMessage msg=1
V/HtcAppUsageStats( 4231): (launch app, package): (Connect to PC, com.htc.android.psclient)
E/SynergyHatesHtcAppUsageStats( 4231): noteResumeActivity
E/SynergyHatesHtcAppUsageStats( 4231): java.lang.Exception: Patched Check By Synergy.
E/SynergyHatesHtcAppUsageStats( 4231): at com.android.server.am.HtcAppUsageStatsService.addULog(HtcAppUsageStatsService.java:646)
E/SynergyHatesHtcAppUsageStats( 4231): at com.android.server.am.HtcAppUsageStatsService.notePauseActivity(HtcAppUsageStatsService.java:703)
E/SynergyHatesHtcAppUsageStats( 4231): at com.android.internal.app.IHtcAppUsage
StatsService$Stub.onTransact(IHtcAppUsageStatsService.java:110)
E/SynergyHatesHtcAppUsageStats( 4231): at android.os.Binder.execTransact(Binder.java:320)
E/SynergyHatesHtcAppUsageStats( 4231): at dalvik.system.NativeStart.run(NativeMethod)
E/SynergyHatesHtcAppUsageStats( 4231): noteResumeActivity
E/SynergyHatesHtcAppUsageStats( 4231): java.lang.Exception: Patched Check By Synergy.
E/SynergyHatesHtcAppUsageStats( 4231): at com.android.server.am.HtcAppUsageStatsService.addULog(HtcAppUsageStatsService.java:646)
E/SynergyHatesHtcAppUsageStats( 4231): at com.android.server.am.HtcAppUsageStatsService.notePauseActivity(HtcAppUsageStatsService.java:703)
E/SynergyHatesHtcAppUsageStats( 4231): at com.android.internal.app.IHtcAppUsageStatsService$Stub.onTransact(IHtcAppUsageStatsService.java:110)
E/SynergyHatesHtcAppUsageStats( 4231): at android.os.Binder.execTransact(Binder.java:320)
E/SynergyHatesHtcAppUsageStats( 4231): at dalvik.system.NativeStart.run(NativeMethod)
I wrote up more here - http://infectedrom.com/content.php/154-HTCs-User-Behavior-Logging
Click to expand...
Click to collapse
DCONFIG GUIDE
Dconfig lets you tune this rom exactly how you like it. instead of hardcoding tweaks we expose all of our settings and let you choose. there is never a "one size fits all" when it comes to performance settings so why not let each user customize how it runs?
The default rom setting are contained in /system/etc/dc.conf these are updated to our liking which is usually a daily driver setting.
The first time you run dconfig it will load these settings into each screen. From here on after you save your settings are written to /data/data/com.damaged.DConfig/dc.conf and will stick with you every rom flash.
Most settings are only triggered after a full reboot, not waking from hibernate. You need init.d to be triggered, if your unsure adb reboot will always work
The most common settings people change I will explain here, there is also some text inside dconfig:
Storage control
Main Page (A2SD)-
This has your typical a2sd options, but has been beefed up for synergy rom. move your apps to sd, move dalvik to cache partition or sd. dalvik-cache can get very big on this device, so be careful moving it to /cache if your going to install many apps!
For a2sd to work, you _MUST_ have your sd partitioned with ext4 if you are on stock HTC kernel or ever plan to go back and have a2sd work. ext2/3 available as partition 2 in ziggy kernel. The layout should be as follows:
partition 1 - vfat (regular sd card partition)
partition 2 - ext4 for a2sd
partition 3 (optional) - swap partition
Click to expand...
Click to collapse
Banned App support (storage control pg2)-
Make sure your sdcard is not mounted before opening this option. All APKS will be moved to /sdcard/SynergyROM/disabled/ and on each full flash will not be reinstalled. It will appear hung when file operations are going. Also there is no confirmation on unban, it just goes. Deal. Ill fix it in a later revision.
Theres two options, Automatic & Manual. Automatic is what comes up by default. Choose an operation and It will select all the default apks used to do what you chose, click to remove anything you dont want t remove then press menu save to save.
For Manual Mode press menu, Choose option 1. Select APKs you never want to use. Press menu go to step 2 to confirm, then press menu and go to save.
Click to expand...
Click to collapse
Basic Settings:
Zipalign on boot: This will add a few seconds to each boot, but will run through your /system/app and /data/app for files that are not zipaligned and automatically do it. this is recommended to leave on, as not all market apps zipalign there stuff if it is written for older SDKs or whatever.
Lowmemkiller: we have many preset lowmemkiller values. This is very important to the end user experience as everyone has different needs here. People run sense with a bunch of widgets, lots of syncs, like having stuff open should set this to a low number to keep things running. People that want dead apps to die right away and are looking for fast performance for what they are doing should set to a high number.
High Mem/Lowmem * - The first 3 values in lowmemkiller are optimized for devices with large memory and vice versa.
The number you choose after the highmem/low mem configures the next 3 values for lowmemkiller. these are things like empty processes, services that arent being used, etc. So if you choose 250mb, you will always have around that showing for free memory, but its going to be very aggressive killing applications off. If you use sense and kill things too aggressively you may notice stuff like widgets dying. Our automatic renice script tries to deal with this by setting them to high priorities, but your mileage will vary. I usually leave mine around a 100/150, i have alot of syncs and stuff always running.
Dalvik Heap Size: this is the maximum amount of heap space a single application can have before garbage collection comes off and cleans stuff out. Some apps want more, and less GC == less cycles == better battery but the bigger you set this the less stuff can sit in memory before it gets killed off.
Click to expand...
Click to collapse
Advanced Settings:
Scheduler - basically controls how IO works. noop/cfq/deadline are the 3 choices, CFQ is default HTC setting. noop is first in first out and really basic, should be OK for device but id love to see benchmarks. you can read more on schedulers here & related pages - https://secure.wikimedia.org/wikipedia/en/wiki/Noop_scheduler
ReadAhead - this setting is in KB, it should improve sequential reads from mmc. 1024/2048 is probably a sweetspot, but once again id like to see some benchmarks!
Click to expand...
Click to collapse
SYSTEM TOOLS & INFO
our services are hardcoded in our ramdisk. if you go to another kernel you will likely break these.
Dropbear - SSH shell
Inaydyn - DYNDNS hostname support
Arenice - Sets stuff like mms/phone/sense to highest "nice" priority. this should have lowmemkiller kill them off last.
Perfkill- Loads setcpu perfkill module by default. If you go to another kernel disable this.
DROPBEAR / INAYDYN guide-
https://code.google.com/p/synergy-kingdom/wiki/ModulesAndServices
Disk Info- Shows disk partition free space
Net Info- Shows current IP address
Mount Ro/RW - Obvious
Click to expand...
Click to collapse
Other fun
Open VPN/CIFS
OpenVPN and CIFS combined is sickkk. You can do things like vpn to your home and have a symlink on your sdcard to all your home files. forget dropbox this is encrypted
explained over here -
https://code.google.com/p/synergy-kingdom/wiki/ModulesAndServices
iwconfig
this lets you set wifi transmit power. download "wifi tx power" from market or run the following commands
adb shell iwconfig eth0 txpower X
X == txpower(in dBm). 32/25/18/11/4
to make sure it set run
adb shell iwconfig
and look at TX-Power (3rd row down)
Nano/Vim These are command line text editors, useful for editing stuff quickly. they look ugly in adb shell but over dropbear look pretty
Custom bash environment stuff
you can set custom bash environment stuff in /system/etc/profile if you _never_ us adb shell (or dont care about ugly colorcodes) and want to exclusively use dropbear you can turn colors on universally here.
Click to expand...
Click to collapse
TROUBLESHOOTING BATTERY
Dconfig Process Info - This is the first thing ill ask for troubleshooting battery. After you have flashed and gone through a full power charge/discharge cycle, before you reboot your phone click dconfig process info and paste it here. It must be from when you were running through for a long period of time to make any sense.
Powertop - From adb shell with your phone screen off run "powertop" This shows number of wakes per second so you can see if you have rogue processes chewing wakeups causing your phone not to sleep
logcat - adb logcat with screen off will show you if you have runaway apps doing stuff they shouldnt.
Battery Stats - android battery stats can sometimes get whacky especially if you wipe data often (battery stats are in /data/system/batterystats.bin) Calibrating your battery with android is always recommended-
http://wiki.cyanogenmod.com/wiki/Troubleshooting#Battery_recalibration
Click to expand...
Click to collapse
We try to follow good open source practices, leaving all of our stuff open via SVN so everyone can see our changes and help us grow. we try to give props where props are due in code, commits and our official posts. If we missed anyone please let us know and ill make sure its fixed. We expect other devs to do the same if they use part of our work, we wrote/build/modified most of our stuff custom so we know where its used - its upsetting to see our stuff elsewhere without the same respect back. If you like our work, click the thanks button, help contribute here, buy us a beer, whatever. We like to keep this fun but it does take time so appreciation is always welcome
Click to expand...
Click to collapse
dibbss....................................
reserved.......................
this will most likely say something important sometime in the future
lol look you with the new ROM...aren't you fancy!
why yes i am sup boyeeeeeeeeee
Woah you guys work fast! What's the difference between this and the other synergy?
Sent from my PG86100 using Tapatalk
el poblano said:
Woah you guys work fast! What's the difference between this and the other synergy?
Sent from my PG86100 using Tapatalk
Click to expand...
Click to collapse
this is a port from the htc kingdom to the evo 3d right now its pretty stock so there is a huge difference its going to take me a little time to get all these mods implemented but i move fast and you guys have it under svn control so you can keep up
Virus said:
this is a port from the htc kingdom to the evo 3d right now its pretty stock so there is a huge difference its going to take me a little time to get all these mods implemented but i move fast and you guys have it under svn control so you can keep up
Click to expand...
Click to collapse
How do you like the interface? I just barely switched to synergy from virusrom (hahaha all your roms) and would hate to wipe again, unless the kingdom UI was that much better. As for the mode I know you guys do amazing work, so I'm not worried about that!
Sent from my PG86100 using Tapatalk
Virus said:
why yes i am sup boyeeeeeeeeee
Click to expand...
Click to collapse
Lol not much here...just trying to find people to play Words With Friends against...lol yea I was late to the game, so what lol
el poblano said:
How do you like the interface? I just barely switched to synergy from virusrom (hahaha all your roms) and would hate to wipe again, unless the kingdom UI was that much better. As for the mode I know you guys do amazing work, so I'm not worried about that!
Sent from my PG86100 using Tapatalk
Click to expand...
Click to collapse
It really doesn't look any different. If the is like the synergy-kingdom port for the 4G.
it looks the same 3.0 let me explain why i spent the day porting all this.
1. the htc kingdom finally got a full ruu that was 2.3.4 the one that i based all my evo roms on was a test build with debugging turned on in the whole rom.
2. the kingdom is a single core processor 3.0 sense phone so i knew when i ported it to the 3d it would fly because of the dual core processor!!!
aight guys im out for the night enjoy!!!
You beat me....I thought about doing this when Football posted. Just started so I'm glad I saw your thread.
Sent from my HTC Evo 3D using Tapatalk!
TMartin said:
You beat me....I thought about doing this when Football posted. Just started so I'm glad I saw your thread.
Sent from my HTC Evo 3D using Tapatalk!
Click to expand...
Click to collapse
sorry mane !!!
This thang is very snappy
Sent from my PG86100 using xda premium
Flashing now, quads and any bugs in the edit
Edit 1: Woah, 400mb+ free ram from the get go xD
Edit 2: real world phone flies, but quad scores are only like 1700-1900 and I normally get like 2300's+ on shooter synergy, but seems good so far
how do people get such high quad scores? the highest ive gotten with the 3d was when it was unrooted stock. im getting around 1400 running synergy 3Dvo unofficial build #236. how do i get my score up? thanks
Fast as all hell, one problem though.. calendar and gallery aren't showing up.
If you don't have an 3vo, you don't have an 3vo
jeffhbo said:
how do people get such high quad scores? the highest ive gotten with the 3d was when it was unrooted stock. im getting around 1400 running synergy 3Dvo unofficial build #236. how do i get my score up? thanks
Click to expand...
Click to collapse
Well for one it's going to be hard to get the kind of scores people were getting on 2.3.3 because you can oc on 2.3.3 but until the kernel source is released for 2.3.4 you can't. I know I also seen people that would kill everything that runs in the background before they would run a benchmark which makes a huge difference. I say as long as the phone feels fast and snappy then it doesn't really matter.

[UPDATE] Memory issue with kexec.

UPDATE:
So it seems as though i have solved that problem, and now i just away the kernel modules. Thanks for all your help guys.
Code:
adb shell /data/local/kexec /data/local/uImage
MSTART= 12668952828585181184 MEND=18014435486466048 MEMTYPE=0 NR_SEGMENTS=0 ULONG_MAX= 4294967295
MSTART= 12668952829122052096 MEND=18014435822010368 MEMTYPE=0 NR_SEGMENTS=0 ULONG_MAX= 4294967295
MSTART= 12668952829390487552 MEND=18014436090445824 MEMTYPE=0 NR_SEGMENTS=0 ULONG_MAX= 4294967295
start= AFD1297980000000 mem_min= 0 hole_min=0 end=4000089C000000 mem_max =FFFFFFFF hole_max=FFFFFFFF
Cannot open /proc/atags: No such file or directory (Doesnt really matter from what ive read)
kexec_load failed: Function not implemented (The module)
entry = 0x80008000 flags = 280000
nr_segments = 2
segment[0].buf = 0x2e4e8
segment[0].bufsz = 10
segment[0].mem = 0x80001000
segment[0].memsz = 1000
segment[1].buf = 0x403ff048
segment[1].bufsz = 2c4214
segment[1].mem = 0x80008000
segment[1].memsz = 2c5000
So hears the deal myself and gameman73 have been working our a**es off trying to get this KEXEC to compile and work. The problem is the current memory will not allow for certain calls to the iomem.
We need to find a way to have this line of code compile and be true on our devices. If someone could sift through the code alittle that be well appreciated:
Code:
kexec/kexec.c 230: while ((j < info->nr_segments) && (([B](unsigned long)info->segment[j].mem) <= mend[/B]))
Apparently it thinks info->segment[j].mem is a const * void
Here's the source http://horms.net/projects/kexec/kexec-tools/kexec-tools-2.0.2.tar.bz2
When I work on something, I often find that having a complete understanding of the problem makes the solution clear. Perhaps this will help you understand the problem better:
SEE ATTACHED FILE, FIRST LINK*
Related. Looks like you aren't the first person to have a problem with the way memory is called in kexec. You might be able to work something out from this discussion, however old it may be.
SEE ATTACHED FILE, SECOND LINK*
This is something else about disabling kexec from executing. A workaround is discussed, but I am by no means a developer and I can't make any sense of it. Just giving you what I find.
I don't mean to spam, and I don't want to be the typical noob getting in the way, but I do want to help. Research, it seems, is about all I can do until my unit arrives (hopefully tomorrow).
*edit: since this is my first post, please excuse the attached file. It is only because with less than 8 posts I cannot put the links in the body of my message.
twodollaz: research is awesome. digging that crap up is a giant pita.
loglud: did you guys get kexec-mod compiling and loading? i haven't had time to look at it much, but all the sources i've found require a huge amount of work to compile, let alone load and run. do y'all have more information on that? i'd look at why the line you mentioned isn't working but i have no frame of reference if i can't reproduce it myself :-/
Actually you really don't need the module to reproduce the error that I am talking about. But gameman73 does have a fully compiled module loading into insmod. And it is showing as installed. You can ask him.
As for you links twodollaz there actually very useful, however not for our problem. The problem that they are incurring is that of the memory not being malloced, or assigned to the process. Our problem is that according to the program there is no memory existing, (the page is there but the lines are not). I think i might have found a solution last night while sleeping ironically, however i am in work and cant test till I get home.
You've gotta love it when your subconscious does the work for you.
If you guys need more help with this I would be glad to join in. I have literally no experience with kernels, hardware, etc though so I will need some hand holding to get kexec loaded and testing. Once I have the build/run setup I might be able to help. I am a programmer by trade, mostly java based, but can write c/c++ when pressed. Alot of what I do on a day to day basis is pull apart other people's code and fix it, optimize it, etc - mostly in a JVM but I have done this some for system cores.
zambien said:
You've gotta love it when your subconscious does the work for you.
If you guys need more help with this I would be glad to join in. I have literally no experience with kernels, hardware, etc though so I will need some hand holding to get kexec loaded and testing. Once I have the build/run setup I might be able to help. I am a programmer by trade, mostly java based, but can write c/c++ when pressed. Alot of what I do on a day to day basis is pull apart other people's code and fix it, optimize it, etc - mostly in a JVM but I have done this some for system cores.
Click to expand...
Click to collapse
zambien you are my new best friend. If you could take a look at what are valid memory locations in the locate_holes function that would be amazing. So far when i do an
Code:
fprintf(stderr, "mem= %li...",(unsigned long)info->segment[j].mem))
i always get nothing. I think this might be because j needs to start at 1 but idk. if you could find a way to iterate through
Code:
info->segment[j].mem
and find where it is valid, we might be on our way.
Forgive me if I'm way off, but how does this sound? I don't know if this device is EFI compliant, but if it is - and apparently some ARMv7 devices are - then it could allow kexec to reference a more complete memory map provided by EFI. The patch behind the link is for x86, but perhaps there are some ideas it might provide.
Just trying to help.
See attached for link..
twodollaz said:
Forgive me if I'm way off, but how does this sound? I don't know if this device is EFI compliant, but if it is - and apparently some ARMv7 devices are - then it could allow kexec to reference a more complete memory map provided by EFI. The patch behind the link is for x86, but perhaps there are some ideas it might provide.
Just trying to help.
See attached for link..
Click to expand...
Click to collapse
Hmm thats very interesing... Ill try this when i get home. Im looking though it more and im starting to think that this could be our problem. Im going to pull one of the patched files down tonight and try seeing what happens.

[HOW-TO] ASUS system boost - root required - v0.4 UPDATE!

Hello, last two days I thought about I/O performance of great Asus Transformer Prime.
It is actually PDA so it means that device is not in the real power off state so much.
It can be used for ANY kernel and ANY rom!
Works with ANY ASUS TRANSFORMER MODEL!!!!!!!!!!!!!!!!!!!!!
Sooo let's tweak it for better performance!
We will reduce write times to SSD drive, no more hangups, ARNs etc.
I am using it on my own prime for one day and I have no delays at all.
For this test I need huge amount of volunteers to tune numbers in the script.
This change is only for actual session
If you want to save it after reboot use SManager for script autorun.
Here is script, run like. su
So download script on sdcard to root of sdcard, unzip and run:
Code:
su
cd /sdcard/
sh tune.sh
It is safe and it will not harm your system or break OTA update
The worst scenario is softresetting your device after
hang up (but it should be ok).
PLEASE I NEED RESPONSES FROM YOU!!!!
+ Faster system
+ less hangups (none on my Prime)
+ You don't have to flash new kernel
+ It is for actual session only, after reboot you have to run script again
+ Better battery life!
+ Longer life for internal SSD drive!
- If you reset your prime you can loose some of your datas
- If your system hangs you can loose some of your datas
- It is for actual session only, after reboot you have to run script again
EDIT: :::::::::::::::::: Ok version 0.2 is out. ::::::::::::::::::
With previous values I had problem with gmail.
With little tweaking I have no issues now and there is ALMOST no drop of permormance compared to version 0.1.
Changelog:
Code:
changed value for dirty_ratio from 90 to 70
changed value for dirty_background_ratio from 70 to 50
If you haven't gmail issues you don't have to install version 0.2
Nvm it seems that gmail issue had nothing to do with these changes
EDIT: 25.6.2012
Tune script is included here:
http://forum.xda-developers.com/showpost.php?p=27862975&postcount=149
:::::::::::::::::: EDIT 2: 26.6.2012 New version out v0.3 ::::::::::::::::::
+ tweak for battery (audio is suspended earlier when it is not used
+ some tweaks to cfs scheduler should be more responsive
Let me know your experiences with this version!!
::::::::::::::::::8.7. 2012 NEW VERSION OUT! v0.4 ::::::::::::::::::
Some of ideas taken from here ! http://forum.xda-developers.com/showthread.php?t=1205259
Optimalized for Prime
+ Added three types of scripts
+ 1st script = tune.v0.4.sh.zip = safe optimalization = only safe tweaks which will speed up IO operations a little bit
+ 2nd script = tune.v0.4.drive.sh.zip = drive optimalization = same like 1st script + optimalizations for internal ssd drive
+ 3rd script = tune.v0.4.max.sh.zip = heavy performance mode = 1st + 2nd script + "old" checked by users tweaks with background ratio, swapiness etc. + io mount tweaks + kernel tweaks + internet tweaks = max. perform. (for best turn sio TOO!!)
+ Longer life for internal SSD drive! Because noatime,noadatetime = less writes
- Somebody reported battery drain, so these relative functions were removed
Please for correct testing remove ATP application and run this script with SManager or manually (if you won't uninstall ATP it will change values...) If you don't want to remove ATP you have to wait for new developer of ATP when he will add these version of scripts to ATP !!!!!!!!!
If you have some problems after this script PLEASE try to remove ATP first, it seems that on some devices it has problems with running this script.
ok i m running it right now.
what are the default values?
Sent from my Transformer Prime TF201 using Tapatalk 2
Sorry I dont remember. Reboot your prime and you will see defaults.
batoo said:
Hello, last two days I thought about I/O performance of great Asus Transformer Prime.
It is actually PDA so it means that device is not in the real power off state so much.
It can be used for ANY kernel and ANY rom!
Sooo let's tweak it for better performance!
We will reduce write times to SSD drive, no more hangups, ARNs etc.
I am using it on my own prime for one day and I have no delays at all.
For this test I need huge amount of volunteers to tune numbers in the script.
This change is only for actual session
If you want to save it after reboot use SManager for script autorun.
Here is script, run like. su
So download script on sdcard to root of sdcard, unzip and run:
Code:
su
cd /sdcard/
sh ratio.sh
It is safe and it will not harm your system or break OTA update
The worst scenario is softresetting your device after
hang up (but it should be ok).
PLEASE I NEED RESPONSES FROM YOU!!!!
+ Faster system
+ less hangups (none on my Prime)
+ You don't have to flash new kernel
+ It is for actual session only, after reboot you have to run script again
+ Better battery life!
- If you reset your prime you can loose some of your datas
- If your system hangs you can loose some of your datas
- It is for actual session only, after reboot you have to run script again
Click to expand...
Click to collapse
Tempie007 said:
ok i m running it right now.
what are the default values?
Sent from my Transformer Prime TF201 using Tapatalk 2
Click to expand...
Click to collapse
Hi, it will be interesting to see how this works. swappiness=0 will cause less swapping to disk (it will only happen when it needs to). Default for swappiness=60 in our Android and mainline Linux kernels. These settings here are aggressive in trying to reduce swap disk i/o, so it will be great to see if it succeeds and whether or not OOM errors occur when RAM is running short when using RAM hungry applications or doing extreme multi-tasking.
I have also been testing something at the vm level in the kernel that I found in the HTC OneX source. It is something the HTC engineers added that would actually set the default to swappiness=100, the complete other direction from what you are doing here. This theory is to clear out the stale RAM and open up the RAM for something more useful. While this may be counter-intuitive to I/O performance since swapping equates to more disk i/o, the code change also implements some changes to the block, fs, and mm portions of the kernel. Essentially, from what I can tell, it flags and handles disk operations (aka "bios") differently if they are involved in swap operations (going to or coming from swap). A "bio" is essentially a manifest of an ongoing I/O block device operation, what sectors and memory locations it contains etc. Once the RAM is freed up, I have also been increasing the Dalvik vm settings in the build.prop to allow for more RAM consumption. So far, this combination (at least for me so far) has really given me good UI performance and I haven't had to kill the browser often like I did before. I have yet to play with vm.dirty_ratio and vm.dirty_background_ratio, but I am wanting to do this as well to see what combination can work the best for us.
Anyhow, thought I would share. I think you are looking at some important things here with the tuning of virtual memory to see how they can affect disk performance and more importantly application fluidity.
Cheers
Hi
I'm using it for about two hours and I had one reboot when I opened File explorer (before this never happend to me on .28) Im using also IO Sio from Your other topic (it seems to be alright...everything seems to work smoother). On tune.sh I have better write to sd speed in antutu. Now I have 8 mb...before 2 mb. Thx for that.
_motley said:
Hi, it will be interesting to see how this works. swappiness=0 will cause less swapping to disk (it will only happen when it needs to). Default for swappiness=60 in our Android and mainline Linux kernels. These settings here are aggressive in trying to reduce swap disk i/o, so it will be great to see if it succeeds and whether or not OOM errors occur when RAM is running short when using RAM hungry applications or doing extreme multi-tasking.
I have also been testing something at the vm level in the kernel that I found in the HTC OneX source. It is something the HTC engineers added that would actually set the default to swappiness=100, the complete other direction from what you are doing here. This theory is to clear out the stale RAM and open up the RAM for something more useful. While this may be counter-intuitive to I/O performance since swapping equates to more disk i/o, the code change also implements some changes to the block, fs, and mm portions of the kernel. Essentially, from what I can tell, it flags and handles disk operations (aka "bios") differently if they are involved in swap operations (going to or coming from swap). A "bio" is essentially a manifest of an ongoing I/O block device operation, what sectors and memory locations it contains etc. Once the RAM is freed up, I have also been increasing the Dalvik vm settings in the build.prop to allow for more RAM consumption. So far, this combination (at least for me so far) has really given me good UI performance and I haven't had to kill the browser often like I did before. I have yet to play with vm.dirty_ratio and vm.dirty_background_ratio, but I am wanting to do this as well to see what combination can work the best for us.
Anyhow, thought I would share. I think you are looking at some important things here with the tuning of virtual memory to see how they can affect disk performance and more importantly application fluidity.
Cheers
Click to expand...
Click to collapse
Ice increased my dalvik vm also through build.prop. Like the heapsize, growth limit, startsize etc...how much can you increase those vm to where its still safe? On stock kernel.
What values are you running at? IM also using that dalvik jit mod.
demandarin said:
Ice increased my dalvik vm also through build.prop. Like the heapsize, growth limit, startsize etc...how much can you increase those vm to where its still safe? On stock kernel.
What values are you running at? IM also using that dalvik jit mod.
Click to expand...
Click to collapse
Not sure how much room there is since I have only tweaked on the prime recently. I am running 8m, 64m, and 256m now. One of my other tabs used higher dalvik settings like this on the HC stock ROM (GT 8.9 or Iconia A500 can't remember). There are so many parameters to take into account for any given test etc., as they say "you never step into the same river twice" LOL.
I have posted my latest alpha kernel with the aforementioned changes. It will be interesting to see if folks like it or not. It is working great for me thus far.
Guys pls no offtopic and chat.
Ill try this new tweak once I get off work.
my first problem. cmclient has stopped.
first time I have seen this in weeks and it comes after 45 min of this tweak.
However it may be related to the fact that I have not used the default browser in weeks.
whycali said:
my first problem. cmclient has stopped.
first time I have seen this in weeks and it comes after 45 min of this tweak.
However it may be related to the fact that I have not used the default browser in weeks.
Click to expand...
Click to collapse
a reboot should clear it. did you enter in commands exactly like listed in op? it tells me file not found. when i unzipped the file, it gives me a tune.sh txt file or whatever. in the commands, is it supposed to be "tune.sh" instead of "ratio.sh"? i see i can just click the file and execute the file like that, bypassing the need to enter in commands. same like with overclock files. i could just execute them manually instead of using an overclock app.
have you noticed any other issues? what benefits have you noticed so far? you have me hesistant to execute the file now, since those commands give me error.
demandarin said:
a reboot should clear it. did you enter in commands exactly like listed in op? it tells me file not found. when i unzipped the file, it gives me a tune.sh txt file or whatever. in the commands, is it supposed to be "tune.sh" instead of "ratio.sh"? i see i can just click the file and execute the file like that, bypassing the need to enter in commands. same like with overclock files. i could just execute them manually instead of using an overclock app.
have you noticed any other issues? what benefits have you noticed so far? you have me hesistant to execute the file now, since those commands give me error.
Click to expand...
Click to collapse
PM'd you. it was just an alert. no need for reboot. hard to see or report anything yet.
whycali said:
PM'd you. it was just an alert. no need for reboot. hard to see or report anything yet.
Click to expand...
Click to collapse
Did you guys get this to work, I keep getting the file not found message
whycali said:
PM'd you. it was just an alert. no need for reboot. hard to see or report anything yet.
Click to expand...
Click to collapse
MRCANNADY said:
Did you guys get this to work, I keep getting the file not found message
Click to expand...
Click to collapse
If you want to try the OP's settings, you can easily change these and other virtual memory related settings graphically using the free app System Tuner under "SysCtl". This may be easier for those that don't like messing around with scripts. You can also optionally have the settings to be activated on boot if you test them thoroughly and want them to persist.
I ran
sh tune.sh
as the third command since that was the file name. nothing to report beyond the first one I posted here. I have not sodded yet and have folded my prime closed for a while since implementation.
im getting great results so far. no lag during app store apps updating and installing. plus the apps download and install so fast now. I think this mod along with SIO scheduler, build.prop tweaks, and overclock makes the prime scream speed. no negative drawbacks running this so far. i havent tested playing games yet.
whycali is correct. the filename in the command needs to be changed to what he posted, tune.sh
I am so sorry I changed typo in firat post to tune.sh, my test version had diff. Name.
i am going to try this based on the awesome feedback i have read. i will be testing alongside Chainfire driver and CFQ using ATP Tweak. i will report back. i do have some dalvik tweaks that may yield extreme lag free by forcing zygote to recognize 4 cores along with JIT.
Sent from my Transformer Prime TF201 using xda premium
I don't think that tweaking over heap size and experimenting with JIT will help so much.
This is the cleariest way how to speed up system.
swapiness is useful mainly with swap location but prime doesn't use swap at all.
It's true that these values are agressively focused on smooth UI but it's the point.
I am working on another tweaks.
These things can be of course written to startup scripts to the system, but I don't want to unlock my Prime and when I don't have CWM I won't risk some mistyping resulting to bootloop.
This is the most effective way how to safely reach good performance.
Don't blame Asus that they didn't setup these values, they need to keep some "safe" standards.
Anyway I will try to explore more effective ways.
Guys let me knows your experiences!!
I already tested some heavy applications like Nova 3 and it's working without problems...
Results are in
With out Tune.sh script and SIO at balanced setting:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Same but at Performance Setting:
Now with Tune.sh and SIO enabled at balanced setting:
Same with Performance Setting:
You be the judge. Running .28 ASUS Stock and LOCKED bootloader
Sent from my Transformer Prime TF201 Biotchh

Categories

Resources