[REF] Ext4 speed improvement with a safe mount option on /data - Nexus S Android Development

Hey everyone.
As I spend some time on studying Ext4 for the Galaxy S devices, working on Voodoo lagfix, and based on what I saw in mount logs it's possible that the performances could be increased without altering data integrity nor filesystem integrity in case of crash.
On /data, noauto_da_alloc is not used.
This option activates a sort of Ext3 emulation mode, which force sync on write close without sync.
It also comes with a speed penalty for SQLite writes, and is unneccessary when hardware barriers are enabled.
Barriers allow usage of delayed allocations without risk. Delayed allocations are the key to performance for modern filesystems.
as root:
Code:
mount -o remount,noauto_da_alloc /data /data
You can count on me to cook a kernel with this mount option as default
PS: this option is already used in Voodoo kernels for Galaxy S devices / has been chosen after extensive performance and reliability tests.

Okay, kevin_teslacoil run quadrant:
before:
<kevin_teslacoil> 1676 for the full quadrant bench mark
after:
<kevin_teslacoil> interesting
<kevin_teslacoil> 2422 this time
<GuiPer> :O
<Ibanez33> wtf?
I'm not a fan of quadrant, but used as a tool, it can give some useful infos
Also, note that this dramatic change in benchmark result won't be as incredible in real life usage.
But still, it's a better choice of configuration, using the filesystem driver like it should be given the hardware parameters.

Can this be implemented in Voodoo for SGS?

Reference, from man mount.
auto_da_alloc|noauto_da_alloc
Many broken applications don't use fsync() when noauto_da_alloc replacing existing files
via patterns such as
fd = open("foo.new")/write(fd,..)/close(fd)/ rename("foo.new", "foo")
or worse yet
fd = open("foo", O_TRUNC)/write(fd,..)/close(fd).
If auto_da_alloc is enabled, ext4 will detect the replace-via-rename and replace-via-trun‐
cate patterns and force that any delayed allocation blocks are allocated such that at the
next journal commit, in the default data=ordered mode, the data blocks of the new file are
forced to disk before the rename() operation is commited. This provides roughly the same
level of guarantees as ext3, and avoids the "zero-length" problem that can happen when a
system crashes before the delayed allocation blocks are forced to disk.
Click to expand...
Click to collapse

I'm trying this now.

jaju123 said:
Can this be implemented in Voodoo for SGS?
Click to expand...
Click to collapse
It's already implemented in Voodoo

Okay thanks

Still at it I see?

We lose this whenever we reboot I'm assuming?
Quadrant scores:
Before: 1672
After: 2334
Cook this into some good 1.2GHz OC/UV
We already know the Hummingbird can potentially hit 1.6

Its late, nevermid

Preparing a kernel with this option activated as default.

Anderdroid said:
We lose this whenever we reboot I'm assuming?
Quadrant scores:
Before: 1672
After: 2334
Cook this into some good 1.2GHz OC/UV
We already know the Hummingbird can potentially hit 1.6
Click to expand...
Click to collapse
fstab
10 char

Could you please implement this new mount option in your Vibrant "voodoo" kernels? Much appreciated! Thanks for your hard work, Curio!

zimphishmonger said:
Could you please implement this new mount option in your Vibrant "voodoo" kernels? Much appreciated! Thanks for your hard work, Curio!
Click to expand...
Click to collapse
Already told. This is the default mount option for Voodoo, after extensive analysis for both performance and filesystem+data integrity

I am using the latest of the trasig OC kernel for JPO and tried this options with no changes in quadrant. (1720)

deleted...................

Does this work on the galaxy tab?

futuregerald said:
Does this work on the galaxy tab?
Click to expand...
Click to collapse
no.
go to the galaxy tab section

Lagfix
So does this revert upon a reboot? I tried it on my SGTab and nothing happened, just want to make sure there is nothing i need to "undo" other than just rebooting. Thanks!

cba1986 said:
I am using the latest of the trasig OC kernel for JPO and tried this options with no changes in quadrant. (1720)
Click to expand...
Click to collapse
Doesn't work for me either on Galaxy S with JH3 (stock Telstra ROM other than root). Quadrant score actually dropped (916 to 896).

Related

[Q] How do i check which filesystem i got

I just installed Hardcore's kernal with tweaks and Lag fix but i only got 1290 in benchmarking score! How do i check which filesystem i got and how will it be if i have EXT4?
Benchmarking irrelevant to the use of a phone .
jje
Agreed. If the phone runs smoothly without any lag (e.g. 2+ secods between actions), I would leave it and ignore any benchmark score. My phone runs VERY fast without a lagfix (change of file system) and in fact SLOWS DOWN when I install a lagfix.
Yes you are right. But i wont change anything because i don't want to mess anything up!
Hardcores lagfix schemes and tweaks have to be enabled via recovery....Speed mod > lagfix...it will also display your current filesystems
Sent from my GT-I9000

[Q] Installed Suckerpunch #51, Serendipity ....

I would like to know how I can check if the phone is overclocked? I used the same settings I found in the Suckerpunch #51 Kernel, -100 pretty much everywhere. Stable, Quadrant score is about 1600 consistently...
How can I check how much I'm running at? Also using Serendipity and Suckerpunch does that mean I'm running EXT4?
I'm pretty new to this, I installed this all last night for the first time.
Any help would be appreciate.
T.
Sorry for the double post, but how can i check my file system and how can I get EXT4 - All files if I don't already have it.
Thanks,
I assume your using voltage control if so go into it select the mhz you want to run at from the drop down then there is a tab at the bottom that says select states un check every mhz above the mhz you want to use example: you want 600mhz then only 400, 200, 100 checked the rest all unchecked.
As for ext 4 boot into cwm goto speedmod then lagfix look at the bottom if u see ext4 at the bottom for file systems then lagfix enabled if u don't then u need to enable it in that menu. only about half the file systems will say ext4 if lagfix is enabled
Paragon rc6 with Paragon Kernel
Underclocked to 800mhz
Undervolted to -100mV
Paragon rc6 with Paragon Kernel
Underclocked to 800mhz
Undervolted to -100mV
I'm currently running Serendipity latest release with SuckerPunch #51 Kernel.
When you say boot into CWM and go to Speedmod then lagfix, that means i need to change kernels right?
my settings for voltage control are not higher than 1200 and my states checked are 7 states under that like suggested in the Suckerpunch #51 post.
Nevermind my friend, I believe I am in the process of updating to EXT4
"keywords are I believe "
Although right now after doing the lagfix like you mentioned from CWM and enabling EXT4 on all data and systems, I try and run Voltage and i get a message I am not rooted.
Is that a problem? am I doing something wrong?
Edit again I apologize I'm rooted again through CWM.
Thing i still don't understand is how do I bring my OC up to 1200 -- or even better how can I confirm I am Overclocked?
Lol very new to this heh? Go into cwm goto backup and restore and make a backup for me please lol. That way if you screw up you can go into cwm and restore. Now for voltage control id recommend underclocking to 800 because it will help with battery and you won't notice a difference in performance unless you run benchmarks which mean nothing other than giving you.some numbers to show off. Now after you select what you want in voltage control click options button and apply boot settings then exit and thats it. You can get a system info app from market or run linpack and it will show you your clock speed in the results.
Paragon rc6 with Paragon Kernel
Underclocked to 800mhz
Undervolted to -100mV
Thank you so much - everything seems to running like you said.
File Extensions are EXT4 now, lagfix is enabled, rom is running beautifully, kernel seems stable after 60 runs through stability test.
I think I'm good
I appreciate your input.
np like I said too if your battery life is an issue try underclocking because I run st 800mgz no problem
Paragon rc6 with Paragon Kernel
Underclocked to 800mhz
Undervolted to -100mV

Which overclock kernel

Updated my SD card to CM7.0.3 and want to use an overclock kernel.
Which one is best to use from the downloads available here do you just use the latest 040411 or are some of the test builds good?
I think most people (myself included) are having pretty good luck running 1.3 ghz from the 042411 file. I'm on 7.0.2 but I haven't seen anything saying it breaks moving to 7.0.3. Had it running OC'd for about a week and haven't had any odd behavior so I'd start there.
- From the Test Builds Section
findmike said:
I think most people (myself included) are having pretty good luck running 1.3 ghz from the 042411 file. I'm on 7.0.2 but I haven't seen anything saying it breaks moving to 7.0.3. Had it running OC'd for about a week and haven't had any odd behavior so I'd start there.
- From the Test Builds Section
Click to expand...
Click to collapse
how is the battery usage when overclocked?
When I first set up my SD card the following instructions were in the thread concerning overclocking
5a. *Optional* If you want to run an overclock kernel you need to choose and download a compatible kernel for SD (not eMMC).
5b. Move the uImage file from the SD card to your pc as a backup.
5c. Rename the oc kernel you have downloaded uImage copy it to the SD card.
Can I simply take the zip file for the 042411 kernel open it and swap the uImage files. I saw in another thread about flashing it.
Had lots of trouble getting the 7.0.3 update to take, timing the hold the n and power buttons trick.
Also I saw something about using setcpu to overclock, can someone fill me in on that, is it software or somewhere in the CM7 settings?
s52m3 said:
how is the battery usage when overclocked?
Click to expand...
Click to collapse
I download with Kernel Manager app the one who is recommended for my device.
I use Test kernel at 1,3G without any problem.
RASTAVIPER said:
I download with Kernel Manager app the one who is recommended for my device.
I use Test kernel at 1,3G without any problem.
Click to expand...
Click to collapse
Are you talking about this app
https://market.android.com/details?id=com.teamwin.kernelmanager.free&feature=search_result
Battery life seems to be pretty good right now but I understand the latest CM builds have some fixes that help increase battery life. I don't think the overclock really effects battery life all that much since the vast majority of the time it doesn't need to kick into high speed.
For the install of the kernel, I normally just flash that when I flash the OS and Gapps. If you are running CM7 off your SD card, I can't help much there except to say that it's SOOOO much easier to run off eMMC since I can just use the built in Rom Manager App to jump into Rom Manager and update things without having to have a bootable card or modifying any files.
Regardless of SD / eMMC install, you don't need to use SetCPU with CM7. If you get the kernel installed, just go into Settings / CyanogenMod settings / Performance / CPU settings and you can change. Most people use the OnDemand performance governor with 1300 max and 300 min and set on boot checked.
I leave Set on Boot off in case something goes goofy. I just reset the overclock to 1300MHz when ever I reboot with a new build.
I could never get the 424 OC to load on my Nook (always got the "expected ) error) so I just swap the OC kernel and system folder into each new build. It's a few extra steps but at least it works.
I'm running N67 at 1300MHz from a Sandisk Class 4 16GB card. Works great!
Tried the 0424 kernel and it stops on first line saying it expected something. Saw someone else had this problem in another post
Just found this on another post
Kernel Issues:
* Flashing OC kernel results in "ANDROID" hanging/bootloops on boot. You need to change the updater-script to ext4, or use this kernel. Here is information about the filesystems used.
* Does the beta test have an OC kernel? No. And do not use any posted OC kernels with it.
* Which OC kernel can I use with stable/nightlies? Either the latest test (4/24) or stable (4/04) can be used. Both need the updater-script to be changed to ext4. Look here for information.
I will try this new one.
GTT1 said:
Tried the 0424 kernel and it stops on first line saying it expected something. Saw someone else had this problem in another post
Just found this on another post
Kernel Issues:
* Flashing OC kernel results in "ANDROID" hanging/bootloops on boot. You need to change the updater-script to ext4, or use this kernel. Here is information about the filesystems used.
* Does the beta test have an OC kernel? No. And do not use any posted OC kernels with it.
* Which OC kernel can I use with stable/nightlies? Either the latest test (4/24) or stable (4/04) can be used. Both need the updater-script to be changed to ext4. Look here for information.
I will try this new one.
Click to expand...
Click to collapse
You're running CM7 off an SD card, unless you want to mess up whatever you have on internal eMMC, don't go changing scripts or flashing things which don't apply to your install. Whichever way you got your CM7 installed, stick to the original instructions and follow up on the original threads instead of grabbing bits and pieces here and there. You'd save yourself and others a lot of confusion.

[Q] Some issues with my Galaxy S.

Before I start, let me clarify that I am using S.U.R.F.A.C.E rom and Galaxian kernel.
1. I always get a force close when I access : Settings > Wireless and Network > Synchronise.
and Setting Lockscreen Wallpaper > Gallery.
This two problem has been with me for the longest time ever. I'm not too bothered by this. But still, I found it odd.
2. Oc/Uv profile always resets itself even after 'apply at boot' has been checked.
3. Per app-config in Chainfire does not work regardless of app. Settings can be checked, but does not actually apply any of them (Defaults works)
4. My phone seems to be running slower in EXT 4 then RFS for seemingly no reason whatsoever. ( Unable to 'confirm' this, but the occasional lag and freeze occurs) Would like to know of a way to check if EXT4 is really enabled. I might just be me, but Galaxian kernel simply runs and tells me ext4 is applied, which is new to me since all the ext4 I ever applied in other kernels always does the restore and backup, and is seemingly absent here.
Sorry if such issues has been asked before, but I could not pinpoint someone with the exact same situation as me however hard I searched.
Thank you for reading this extremely lengthy post. And help is greatly appreciated.
Use setcpu to set oc/uv and they should remain after boot. Run adb or terminal emulator and type
mount |grep ext4
and this will show any file systems using ext4 . Galaxian recognises ext4 file systems so will keep previous
Enter recovery, wipe cache, dalvik , fix permissions and reboot (maybe twice)
Sent using geek power

[April 2, 2016][MOD][FIX]MaxOpt R2 1.0.6 UPDATED CODE BASE

NEW EASY INSTALLER, RECOVERY ZIP
Total overhaul of code.
*HELP WANTED, PM FOR RELEVANT DETAILS*
This software package was originally just made for my personal use to rectify the issue of my phone not entering deep sleep when idle and me not having access to a charger for the majority of the day while also improving multitasking because being my phone is also my build environment/office environment, I am frequently jumping around various apps that I'd prefer to keep open.
Things this package accomplishes on your phone (very simple and brief summary):
*Forces entry into deep sleep as soon as the screen is off (if enabled, on by default). It also has audio detection so you can listen to music with the screen off without unwanted deep sleep entry.
*Improves multitasking, no more apps having to reload/redraw when you switch back to them.
*Automatic odexing of all apps, including new installs (if enabled, pre-lollipop ROM's).
*Easy management of swap.
*CPU management. You can set your own values to be locked (no other app can change them) or let its device manager automatically set CPU frequencies and the governor you specify.
*Dynamic Max CPU Freq: When enabled (on by default) it will automatically scale the max CPU frequency value depending on the CPU load. This can help with governors that favor the high end of the frequency table too much by allowing you to save battery but have the CPU power available when needed, without having to adjust anything manually whenever you go from doing something processor demanding to having your phone sit idle.
*Fixes issues with several kernels where the touch screen is unresponsive after waking the device. No more inconvenient force reboots.
*Enables all idle and suspend states available (they are disabled by default quite often) and can help get your device into the lower C-States.
*Fixes broken links to firmware files caused by buggy init scripts on some ROM's.
New/Other features:
*New recovery flashable installer
*Force system wide GPU rendering and faster framerate.
*Fixes Dt2w and Sw2w lock screen freeze bug.
*Now compatible with KSM.
*Faster app loading and responsiveness. Key android services are given priority status for I/O and CPU resources.
*Multitask over 20+ apps simultaneously without any redraws and low-latency app switching (provided you have the swap space)
Tip: I use the large amount of unused space on /system to increase the size of that MaxOpt managed swapfile.
*Fixed the crash on boot issue between MaxOpt and some kernels.
Default MaxOpt config:
•Swap on, default MaxOpt generated swapfile size is 64 MB, with one made on /data, one on /cache, and one on /system if mounted rw.
•Auto-odexing off.
•Hotplugging compatibility on.
•User CPU settings off, auto-device manager on.
•Deep Sleep immediately on screen off enabled.
•KSM off (you must have a kernel that supports it to enable this option and have it work).
•Kernel settings on.
•Everything is forced to be drawn by the GPU.
All of the above listed features are user optional/tuneable.
For those who wish to only use MaxOpt for fixing the lock screen freeze bug associated with some kernels/DT2W/S2W use the following link: http://forum.xda-developers.com/showthread.php?t=3061589
If you would like to just use individual components or adjust program settings from a terminal app, here is an example usage and description of their individual functions as well as other useful documentation (VERY OLD DOC, NEEDS LOTS OF UPDATES):https://docs.google.com/file/d/0B_hgNZE_j5sVbEN4ZUtkS2p0bW8/edit?usp=docslist_api
Terminal Emulator is what I would recommend for use with managing MaxOpts' settings.
System Requirements (not entirely sure due to lack of public testing):
Busybox
A terminal app
A kernel that can best be utilized by these programs.
Please make a nandroid backup before using.
And here is the MaxOpt installer ( R2 1.0.6 ):
* https://drive.google.com/file/d/0B_hgNZE_j5sVaGdxV0FfODdxbVU/view?usp=docslist_api
Changelog:
R2 v1.0.6- Adjustments to write buffering and multitasking memory performance.
R2 v1.0.5a- Fixed a bug present in both this project and MaxLife where data wasn't validated thoroughly enough before using it.
R2 v1.0.5- Added a new completely experimental new user tuneable (on/off, default off) that changes runtime memory allocation values. Only activate it if you have a large amount of swap.
R2 v1.0.0- Totally rebuilt the project, installable with a recovery flashable zip now, kernel image installer is no longer compatible and is scrapped.
For those still getting crashes:
The issue still appears to be related to the device radio when it happens, so, after a crash could you please force reboot your device and try to disable mobile data when it boots before it crashes again and please post a copy of /proc/last_kmesg. Thank you.
Screenshots of battery screen showing time spent in sleep:
https://docs.google.com/file/d/0B_hgNZE_j5sVSjRUU0ZlX0UwUWc/edit?usp=docslist_api
https://docs.google.com/file/d/0B_hgNZE_j5sVSmNjYThkUzAtNGM/edit?usp=docslist_api
https://docs.google.com/file/d/0B_hgNZE_j5sVcWxJd0JyV09nMDA/edit?usp=docslist_api
Please thank if my software has helped you and please leave logs and descriptions of problems if my software did not work for you.
Wow, this looks amazing. Very nice work.
I Will be playing with this for the next few days.
Sent from my Moto G using Tapatalk
Damn this looks complicated as hell haha. Good job OP
Very nice job
Thank you very much everyone. Glad for the positive feedback, this is my first public software release. I daylight in a machine shop, so this was far from my field of expertise and a long learning experience for me
I tried it on faux kernel 014m.
But my phone bootlooped
I have faux clock app.
Is it causing the problem?
Thanks
One possible problem could be the boot image it made was over 10 MB depending on the size of the input one. If that wasn't the issue, did you disable signature checking? Also this is currently not ART compatible. It is also important that you run the installer from a partition that supports octal permissions, so the emulated sdcard is a no go.
Edit: it may be worth trying disabling the faux clock app too. I don't have that kernel or app to try for myself but this mod does affect CPU settings so it could be a conflict. If none of those work, I may have to look into updating my installer with an alternate method for incompatible kernels.
elrod16 said:
One possible problem could be the boot image it made was over 10 MB depending on the size of the input one. If that wasn't the issue, did you disable signature checking? Also this is currently not ART compatible. It is also important that you run the installer from a partition that supports octal permissions, so the emulated sdcard is a no go.
Edit: it may be worth trying disabling the faux clock app too. I don't have that kernel or app to try for myself but this mod does affect CPU settings so it could be a conflict. If none of those work, I may have to look into updating my installer with an alternate method for incompatible kernels.
Click to expand...
Click to collapse
I followed steps as below:
I put that 2 files in the data partition.
Then boot.img of faux.
I set permission 755 for both files and boot.img
Then from terminal I executed the command.
I got new_image.img
I repack the zip using this new boot image and flashed it in recovery.
Then I reboot.
Phone booted and stuck on "optimizing apps 1 of 98"
Then again same.
Also I had 700mb of free memory when I tried this.
When I again booted using faux kernel I had 450mb of free memory.
Can you guess what's going wrong?
Did you disable APK signature checking?
elrod16 said:
Did you disable APK signature checking?
Click to expand...
Click to collapse
Sorry I forgot that.
Where exactly should I put those 2 files.
Was I doing right to put them in data partition?
And after first boot can I enable signature verification?
Do I need to disable it before every boot?
Unfortunately for now it needs to be off whenever an app is upgraded or added, but can be enabled after the reboot that that happens on, and yeah, /data works
Even after disabling signature verification it doesn't work on faux boot.img
Am I doing right?
For whatever reason it sounds like the dexy binary isn't playing well with your phone, I'll make a new installer with the option of disabling it for incompatible setups for the time being, but the other ones should still work. I'll keep ya posted.
My rom is stock 4.4.4
I will try again with disabled optimization.
kedar512 said:
My rom is stock 4.4.4
I will try again with disabled optimization.
Click to expand...
Click to collapse
OK, hopefully that should be the only part of this package not working for ya. Keep me posted, I'll continue trying to figure this out if it persists.
elrod16 said:
OK, hopefully that should be the only part of this package not working for ya. Keep me posted, I'll continue trying to figure this out if it persists.
Click to expand...
Click to collapse
No luck bro
Same problem.Stuck at optimization.
Should I try it on Xperience kernel?
Its not working with faux.
kedar512 said:
No luck bro
Same problem.Stuck at optimization.
Should I try it on Xperience kernel?
Its not working with faux.
Click to expand...
Click to collapse
I would say yeah, try it with it and see if it makes a difference
Also did you try the new build with a clean restore? (Before any of the failed install attempts) Try not wiping the cache/dalvik-cache after install and flash.
I tried again but this time booted upto lock screen and rebooted.
I tried with new build.
after placing ./maxopt boot.img appears running with dexy enabled.
That means it's already working? If yes, have to do anything else?
Every time you turn the meter will have to repeat the procedure?
Sorry my bad english

Categories

Resources