Quadrant with ext4 partitions

Search This thread

AntonX

Senior Member
Nov 9, 2006
432
1,054
Those of you who followed this thread http://xdaforums.com/showthread.php?t=1141550, and went all the way backwards to RFS from ext4, you probably made a mistake. ext4 is objectively a better file system, it just may be configured to run somehow slower, although more secure. This security is needed when the drive can be disconnected on the fly or may suddenly lose power, which is obviously not applicable to our phones as the card is inside and nobody normally removes it with the phone on.

Anyway, I looked how Voodoo mounts the ext4 partitions and found couple of things that can be improved. First of all, "noatime" option should be set to all partition wherever possible. This option tells not to ever update last access time upon every read operation. It is actually being set like this with one of the init.d tweaks already. The other option has way bigger effect. It controls delayed allocations, the allocation mechanism that is one of the biggest improvement of ext4 over ext3. For some reason Voodoo sets it to "nodelalloc" for \data partition. As soon as I changed it to "delalloc", my Quadrant score shot from about 1700 to over 2300.

Here is how to fix it, IF YOU ARE STILL ON EXT4 FOR ALL 3 PARTITIONS. If you moved back to RFS this will have no effect.

If you don't use init.d, then you have to start using it :) You'll have to either modify one of the existing init.d scripts, or write you own like this:

--
#!system/bin/sh

for k in $(busybox mount | grep -E 'relatime|nodelalloc' | cut -d " " -f3) ; do
sync
busybox mount -o remount,noatime,delalloc $k
done
--

Those who already use init.d tweaks should modify the S98edt_tweaks file. Open it with an editor and change the "for" loop in the beginning (the one that deals with remounting partitions) to my code. Save, reboot, and try Quadrant now.

I also recommend removing the "fix" that extends SD read-ahead cache. Comment out the related code, you can easily find it in this file. This cache can bring more troubles than benefits, but well, it's up to you.

Btw you may as well remove code in 20sombionixInit file that deals with the same "noatime", the part that does "for k in $PART;..., done;", it's just redundant.
 

RaverX3X

Inactive Recognized Developer
Jun 13, 2011
4,415
5,195
Cali
If you really wana back up your claim id suggest posing benchmarks. U can also ask dr Honk as hes the one that deved the kernel with voodoo lag fix and ext 4 and as i previously stated most the tweaks are directly from darkey and Teamwhiskey. Granted some can be changed like sd cache it can be commented out smaller and or larger i never said it was the end all be all of use this or else by all means experment. But no offense your just trying to say ext 4 is better not saying it is and isnt but its been stated before and beaten tod death its per case basis not everywhere is it better and in some places it is.
 

AntonX

Senior Member
Nov 9, 2006
432
1,054
Here is my score now. Running stock KD1 with Bali 3.1, OC-ed to 1.2 MHz. All partitions are ext4, here is how they mounted:

--
rootfs on / type rootfs (ro,noatime)
proc on /proc type proc (rw,noatime)
sys on /sys type sysfs (rw,noatime)
/dev/block/stl9 on /system type ext4 (rw,noatime,barrier=0,data=writeback,noauto_da_alloc)
/dev/block/stl11 on /cache type ext4 (rw,noatime,barrier=0,data=writeback,noauto_da_alloc)
/dev/block/stl10 on /data type ext4 (rw,noatime,barrier=0,data=ordered,noauto_da_alloc)

tmpfs on /dev type tmpfs (rw,relatime,mode=755)
devpts on /dev/pts type devpts (rw,relatime,mode=600)
none on /acct type cgroup (rw,relatime,cpuacct)
/dev/block/stl6 on /mnt/.lfs type j4fs (rw,noatime)
tmpfs on /mnt/asec type tmpfs (rw,relatime,mode=755,gid=1000)
none on /dev/cpuctl type cgroup (rw,relatime,cpu)
/dev/block/stl3 on /efs type rfs (rw,nosuid,nodev,noatime,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8)
/dev/block/vold/179:2 on /data/sdext2 type ext4 (rw,relatime,barrier=1,data=ordered)
/dev/block/vold/179:1 on /mnt/sdcard type vfat (rw,dirsync,nosuid,nodev,noexec,noatime,nodiratime,uid=1000,gid=1015,fmask=0002,dmask=0002,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro)
...
--

Btw this is actually another proof that Quadrant don't mean much and nobody should pay much attention to them. The score just should not have jumped that much because of a single change to file writing option.
 

Attachments

  • snap20110629_185634.jpg
    snap20110629_185634.jpg
    28.7 KB · Views: 422

RaverX3X

Inactive Recognized Developer
Jun 13, 2011
4,415
5,195
Cali
Let me ask you who are you? Just curious

Sent from my SGH-i9100 using XDA Premium App
 
Last edited:

RaverX3X

Inactive Recognized Developer
Jun 13, 2011
4,415
5,195
Cali
here mines still bigger
 

Attachments

  • screenshot_10.jpg
    screenshot_10.jpg
    53.5 KB · Views: 384

AntonX

Senior Member
Nov 9, 2006
432
1,054
Let me ask you who are you?

Sent from my SGH-I9000 using XDA Premium App

Is this question for me or for dsexton702? If for me, I'm a software engineer, actually have been for over 20 years, but we are in medical devices field. I started working with computers long time ago in PDP-11 era as a tech then OS engineer, so I pretty much know (or maybe feel :) ) how this things work inside.
 

RaverX3X

Inactive Recognized Developer
Jun 13, 2011
4,415
5,195
Cali
Is this question for me or for dsexton702? If for me, I'm a software engineer, actually have been for over 20 years, but we are in medical devices field. I started working with computers long time ago in PDP-11 era as a tech then OS engineer, so I pretty much know (or maybe feel :) ) how this things work inside.

It was for you i know who dsexton is .
 

AntonX

Senior Member
Nov 9, 2006
432
1,054
How much are you overclocked? Do you want me to try 1.5MHz? I really don't want doing it, there is no practical reason.

Btw I wonder how your /data is mounted. Didn't you guys live it as ext4? Maybe you should change the mount options and see what happens. So if it's still ext4, try running this from adb:

adb shell
su
busybox mount -o remount,noatime,delalloc /data

Run the scores again see if they change. I myself think they will not, it's more of a peculiarity of Quadrant than real improvement.
 
  • Like
Reactions: MarkE08

RaverX3X

Inactive Recognized Developer
Jun 13, 2011
4,415
5,195
Cali
How much are you overclocked? Do you want me to try 1.5MHz? I really don't want doing it, there is no practical reason.

Btw I wonder how your /data is mounted. Didn't you guys live it as ext4? Maybe you should change the mount options and see what happens. So if it's still ext4, try running this from adb:

adb shell
su
busybox mount -o remount,noatime,delalloc /data

Run the scores again see if they change. I myself think they will not, it's more of a peculiarity of Quadrant than real improvement.

2.0ghz oc but i had get the phone extreamly cold oc it run it snap pic get out of it its not stable for long at all..
 

shotchacokov

Senior Member
Mar 20, 2011
518
75
Orlando
Motorola Edge (2021)
Here is my score with Raver & Dsexton's method.

build is in my signature... kd1/bali 3.1uv oc'd to 1.5......

I can also tell you that as my quad score also went up... normal use of the phone is where it really shows. Instant anything.... smooth as butter. So I would say that quadrant does hold some water as far as how well your phone runs.

here is a run just now at 1.0ghz and my best run at 1.5ghz as well...
 

Attachments

  • snap20110628_131357.jpg
    snap20110628_131357.jpg
    41.1 KB · Views: 207
  • 1.0ghz.jpg
    1.0ghz.jpg
    37 KB · Views: 200
Last edited:

RaverX3X

Inactive Recognized Developer
Jun 13, 2011
4,415
5,195
Cali
remember...the sgs 2 is at 2.4ghz...pretty damn big difference just saying and can you give me a smartbench score on 2.0ghz on sgs 4g vs sgs2? just curious:eek:

i would if i could keep the phone stable enough to run a few benchamarks it was hard enough getting it stable enough for that to run
 

mbernusg

Senior Member
Mar 9, 2010
1,183
118
NJ
did this thread really turn into a "my quadrant score has a bigger ENGINE than your quadrant score"? because thats what it reads like.. get over yourselves..

your both posting really great mods that help the community immensely.. if people want to choose ext4 or rfs they can, but lets keep it at that..

edited: for the young padawans
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 6
    Those of you who followed this thread http://xdaforums.com/showthread.php?t=1141550, and went all the way backwards to RFS from ext4, you probably made a mistake. ext4 is objectively a better file system, it just may be configured to run somehow slower, although more secure. This security is needed when the drive can be disconnected on the fly or may suddenly lose power, which is obviously not applicable to our phones as the card is inside and nobody normally removes it with the phone on.

    Anyway, I looked how Voodoo mounts the ext4 partitions and found couple of things that can be improved. First of all, "noatime" option should be set to all partition wherever possible. This option tells not to ever update last access time upon every read operation. It is actually being set like this with one of the init.d tweaks already. The other option has way bigger effect. It controls delayed allocations, the allocation mechanism that is one of the biggest improvement of ext4 over ext3. For some reason Voodoo sets it to "nodelalloc" for \data partition. As soon as I changed it to "delalloc", my Quadrant score shot from about 1700 to over 2300.

    Here is how to fix it, IF YOU ARE STILL ON EXT4 FOR ALL 3 PARTITIONS. If you moved back to RFS this will have no effect.

    If you don't use init.d, then you have to start using it :) You'll have to either modify one of the existing init.d scripts, or write you own like this:

    --
    #!system/bin/sh

    for k in $(busybox mount | grep -E 'relatime|nodelalloc' | cut -d " " -f3) ; do
    sync
    busybox mount -o remount,noatime,delalloc $k
    done
    --

    Those who already use init.d tweaks should modify the S98edt_tweaks file. Open it with an editor and change the "for" loop in the beginning (the one that deals with remounting partitions) to my code. Save, reboot, and try Quadrant now.

    I also recommend removing the "fix" that extends SD read-ahead cache. Comment out the related code, you can easily find it in this file. This cache can bring more troubles than benefits, but well, it's up to you.

    Btw you may as well remove code in 20sombionixInit file that deals with the same "noatime", the part that does "for k in $PART;..., done;", it's just redundant.
    1
    How much are you overclocked? Do you want me to try 1.5MHz? I really don't want doing it, there is no practical reason.

    Btw I wonder how your /data is mounted. Didn't you guys live it as ext4? Maybe you should change the mount options and see what happens. So if it's still ext4, try running this from adb:

    adb shell
    su
    busybox mount -o remount,noatime,delalloc /data

    Run the scores again see if they change. I myself think they will not, it's more of a peculiarity of Quadrant than real improvement.
    1
    All I got to say is keep up the great work guys. What the user prefers is the users choice. Let's just have fun and help eachother along the way. But yea have fun.

    Sent from my SGH-T959V using XDA Premium App
    1
    here
    these are the changed files with his tweaks i didnt modify anything else and i did comment out the sd card cache size if u want one that is back the way it was let me know or do it yourself :p

    edited to fix error i couldnt see thanks!!! u can now recheck it
    1
    Here is a file with just ext4 code. Unzip, copy script to /system/etc/init.d folder. If the init.d folder does not exists, create it. Add Execute permissions to the script file. It's easier to use something like Root Explorer to accomplish these tasks.