[Q] Why do I get slow writing performance ? - Android Q&A, Help & Troubleshooting

Hi,
I'm trying to get the best writings performance possible when transferring files from my NAS to my Galaxy Tab S using 802.11ac wifi connection. The connection link is at 700mbps so everything's fine on this side.
I compiled my own kernel with CIFS and NFS support builtin, to be user to not end up in user land when connecting to CIFS/NFS shares.
Here are the results thath I've collected :
Internal memory
Code:
CIFS => internal storage
783356357 bytes (747.1MB) copied, 49.863986 seconds, 15.0MB/s
0m49.87s real 0m0.85s user 0m47.63s system
NFS => internal storage
83356357 bytes (747.1MB) copied, 47.274252 seconds, 15.8MB/s
0m47.28s real 0m0.81s user 0m44.67s system
/dev/zero => internal storage
1073741824 bytes (1.0GB) copied, 26.634496 seconds, 38.4MB/s
0m26.90s real 0m0.00s user 0m12.75s system
External SD
Code:
CIFS => microSD
783356357 bytes (747.1MB) copied, 49.373790 seconds, 15.1MB/s
0m49.38s real 0m0.75s user 0m31.95s system
NFS => microSD
783356357 bytes (747.1MB) copied, 44.376601 seconds, 16.8MB/s
0m44.38s real 0m0.79s user 0m32.99s system
/dev/zero => microSD
073741824 bytes (1.0GB) copied, 63.342792 seconds, 16.2MB/s
1m3.64s real 0m0.00s user 0m21.11s system
My MicroSD supports transfers up to 45mo/s on my Macbook. It's a sandisk extreme UHS-I U3 64 Gb. We can see that it performs badly compared to internal storage when testing perfs with /dev/zero.
But, I also notice that if I copy from my NAS directly to /dev/null, performance increases. It's non sense because internal storage can support far more than 15 MB/s :
Code:
CIFS => /dev/null
83356357 bytes (747.1MB) copied, 31.921167 seconds, 23.4MB/s
0m31.93s real 0m0.68s user 0m13.30s system
NFS => /dev/null
783356357 bytes (747.1MB) copied, 26.449924 seconds, 28.2MB/s
0m26.45s real 0m0.63s user 0m11.49s system
I'm running Kitkat 4.4 by the way.
Does anybody can help me to understand why the writing performances are not high ? I'm pretty disapointed

Related

Partition question

OK, I have a Gtab with the 11/15 FB build.
I am curious about the partitions. Really, why ? I have worked in Unix for a bunch of years and am a fan of few, large partitions. So why am I choosing 2048 ? Or the max if 4096 ?
If it were a Sun box (which is what i cut my teeth on) I would make the main card (disk) a 12 GB root partition and 4 GB swap.
Do the same rules not apply ? It looks like there are a few different partitions (/system, /data, etc) but my eyes cannot read the terminal emulator all that well.
Andy
Different beasts
aknipp said:
OK, I have a Gtab with the 11/15 FB build.
I am curious about the partitions. Really, why ? I have worked in Unix for a bunch of years and am a fan of few, large partitions. So why am I choosing 2048 ? Or the max if 4096 ?
If it were a Sun box (which is what i cut my teeth on) I would make the main card (disk) a 12 GB root partition and 4 GB swap.
Do the same rules not apply ? It looks like there are a few different partitions (/system, /data, etc) but my eyes cannot read the terminal emulator all that well.
Andy
Click to expand...
Click to collapse
This may not be 100% correct (& if it's not I'm sure someone will correct me).
Really no comparison between a Sun box & a tablet. Sun would be bigger & better hardware.
The tablet only has a 512M nand chip (that holds most of the os), 512M of ram (to run the os, apps & no dedicated graphics memory), a processor that is designed for low power vs performace & and a emmc...basically a thumb drive( in place of an hdd). On top of that Andoid is really a hydrid os (a linux kernel with a java vm to run apps).
As far as partitions go, here is the structure for the nand chip on MOST of the gTabs:
Partition 2 = BCT = boot Config Table
Partition 3 = PT = Partition Table (this list)
Partition 4 = EBT = Bootloader
Partition 5 = MBT = ?
Partition 6 = BLO = Viewsonic Bird Logo
Partition 7 = MSC = ? inandop.log /possibly inter kernel comm tween part9/10
Partition 8 = OGO = logodata (gTablet logo I believe)
Partition 9 = SOS = recovery kernel
Partition 10 = LNX = kernel
Partition 11 = APP = system(rom)
Partition 12 = CAC = cache
If you look at gtablet.cfg file in any of the nvflash packages you will see these partition definitions, fs types & sizes used by nvflash to create them.
You also have 2 additional partitions on the the 16GB internal sd (emmc):
/data - user apps & settings - only accessible via root access
/sdcard = user & app storage
Don't know why exactly why /data is set @ 2 G . Apps in Android don't have the bloat of desktop/PC apps and are considerably smaller. I can tell you that with 83 apps installed I still have nearly 1G of space left on mine out of the 2G.
For the most part, Android doesn't truly multitask apps like on a desktop. From what I understand, Android has it's own mechanism for freeing memory when needed (swapping). When space is needed, non running apps are terminated but the app is responsible for storing persistent data so that it can be reactivated (assuming the app saves persistent data) when called.
Hope this helps.
Al
Cool, thanks, I boosted it up to 4 GB, does not sound like that will hurt (had to reinstall because it was full- could not tell why)
aknipp said:
I am curious about the partitions. Really, why ? I have worked in Unix for a bunch of years and am a fan of few, large partitions. So why am I choosing 2048 ? Or the max if 4096 ?
Click to expand...
Click to collapse
As to what the various partitions are, I can elaborate a bit more on Al's post above. Try these 2 posts:
SD card partitions
NAND Flash partitions
The Android OS has its distributions (ROMs) divided into those partitions described above for pragmatic reasons which are not hard to figure out--mainly to enable easy upgrades of running distributions; with security being a secondary concern.
There is no reason why you couldn't merge some partitions together. For example, GtabComb-b3.3 merges /cache into /data at system bootup time. If you were willing to lose the protected read-only status of /system, that too could be merged with /cache+/data on the SD card by modifying the init rc files. You could muck around with the system at an even lower level since you have access to the source code. It's really up to you how far you want to go. The kernel doesn't care about the no. of partitions or the filesystems on them, or even where they are.
As for your question about the 2GB size of /data, that's just how VS deemed it to be when they released the gTab and that's the size that's followed by most custom ROMs. You can have a smaller or larger size if you want. I, for example, run 2 different ROMs--VEGAn-Tab 7.1 and GtabComb-b3.3--the former on the internal SD card and the latter on a micro SD card just by loading a different boot partition using CWM. And since my micro SD is just 2GB in size, I've shrunk my /data to 256 MB.
aabbondanza said:
From what I understand, Android has it's own mechanism for freeing memory when needed (swapping).
Click to expand...
Click to collapse
None of the currently used kernels swap; and neither does Android. That's why they kill apps when there is no memory.
Explains things very well. Thank you both.

[Q] change boot

hi all, i'm pretty new to android development.
i'm wondering if there is a method to boot up from "hard disk" instead of using the SD when using ubuntu on TF201.
there is some test made with stock rom and "dd" with /dev/zero and /dev/null.
Code:
From Gentoo chrooted into Android ( Stock TF201 ROM ) [ 16GB sd class 2 ]
sd read : 16.3 MB/s
sd write: 03.3 MB/s
hd read : 26.7 MB/s
hd write: 11.2 MB/s
i've extracted the initrd image of the 1st post and i think that modify the 'init' script ( and the scripts inside script/ folder ) can mount different partition on /root dependig on user choice.
so the question is 2:
is it possible to change the partition table of the TF201?
is it possible to ask which partition mount into /newroot (or /root) ??
Thanks in advance,
tux_mind.

Having Trouble Unbricking...

Hello, I'm having problems trying to "unbrick" my rezound while referring to con247's guide posted here
HTML:
http://forum.xda-developers.com/showpost.php?p=30595790&postcount=26
.
the first problem is it isn't even mounting like it should because in kmsg it keeps showing up only as ttyUSB0 instead of the expected sdX12.
the second problem is the connection is very sporadic (as in it connects and disconnects in under a full second) so when it does get detected which isn't always the case it can't write the entire hboot
here's the output from my latest attempt:
Connect device into emmc partition mode NOW
Waiting device /dev/ttyUSB0.......
Foundit!
dd: writing `/dev/ttyUSB0': Input/output error
4+0 records in
3+0 records out
6484 bytes (6.5 kB) copied, 0.210596 s, 30.8 kB/s
Return code is 256
can ANYONE help me?
I would recommend PM'ing con247 or maybe dmeadows.

[Q] Resize the NAND (system partition)

Please can someone help me to resize the system partition of an Android JB 4.2.2 on cubieboard?
Image: sun7i_android_sugar-cubieboard2-8192cu.img
I need more room (it's only 512MB) to install apps.
Well, the APP disk space (nand partition) is very small and the internal "sdcard" too big.
When I install a few applications the space runs out and the system becomes unstable.
I need to increase the nand and decrease internal sdcard to gain more room to my apps...
Well, I started the process by using the tools:
1) To unpack/repack: imgRePacker_204
2) The image ROM: sun7i_android_sugar-cubieboard2-8192cu.img (Android 4.2.2)
3) To burn to flash: PhoenixSuit1.0.6
unpacking the ROM creates a folder named sun7i_android_sugar-cubieboard2-8192cu.img.dump
So, somewhere in internet I see to change the sys_partition.fex file, and search the system nand partition:
Code:
;------------------------------>mmcblk0p8/nande
[partition]
name = data
size = 1048576
user_type = 0x2
so, I change 1048576 to 2097152 (2097152 * 1024 = 2GB)
but :
1) In installed android, the system has only 512MB and not 1GB as show.
2) By increasing this value, nothing happens when I repack back to IMG and flash to the nand.
(all unpak, change, pack, flash process is fine ! )
Here is my devices list and size:
Code:
NAME SIZE MOUNTPOINT LABEL
nand 3.8G
|-nand1 16M Volumn
|-nand2 16M
|-nand3 16M
|-nand4 512M
|-nand5 512M
|-nand6 16M
|-nand7 32M
|-nand8 320M
|-nand9 16M PRIVATE
|-nand10 256M
`-nand11 2.1G
mmcblk0 14.4G
|-mmcblk0p1 900M /
`-mmcblk0p2 13.5G EXTRA
icemagno said:
Please can someone help me to resize the system partition of an Android JB 4.2.2 on cubieboard?
Image: sun7i_android_sugar-cubieboard2-8192cu.img
I need more room (it's only 512MB) to install apps.
Well, the APP disk space (nand partition) is very small and the internal "sdcard" too big.
When I install a few applications the space runs out and the system becomes unstable.
I need to increase the nand and decrease internal sdcard to gain more room to my apps...
Well, I started the process by using the tools:
1) To unpack/repack: imgRePacker_204
2) The image ROM: sun7i_android_sugar-cubieboard2-8192cu.img (Android 4.2.2)
3) To burn to flash: PhoenixSuit1.0.6
unpacking the ROM creates a folder named sun7i_android_sugar-cubieboard2-8192cu.img.dump
So, somewhere in internet I see to change the sys_partition.fex file, and search the system nand partition:
Code:
;------------------------------>mmcblk0p8/nande
[partition]
name = data
size = 1048576
user_type = 0x2
so, I change 1048576 to 2097152 (2097152 * 1024 = 2GB)
but :
1) In installed android, the system has only 512MB and not 1GB as show.
2) By increasing this value, nothing happens when I repack back to IMG and flash to the nand.
(all unpak, change, pack, flash process is fine ! )
Here is my devices list and size:
Code:
NAME SIZE MOUNTPOINT LABEL
nand 3.8G
|-nand1 16M Volumn
|-nand2 16M
|-nand3 16M
|-nand4 512M
|-nand5 512M
|-nand6 16M
|-nand7 32M
|-nand8 320M
|-nand9 16M PRIVATE
|-nand10 256M
`-nand11 2.1G
mmcblk0 14.4G
|-mmcblk0p1 900M /
`-mmcblk0p2 13.5G EXTRA
Click to expand...
Click to collapse
Use this software, search it on google and install it on your PC, then partition you SD
MiniTool Partition Wizard Pro v7.1
azithro said:
Use this software, search it on google and install it on your PC, then partition you SD
MiniTool Partition Wizard Pro v7.1
Click to expand...
Click to collapse
"3) To burn to flash: PhoenixSuit1.0.6"
This implies using NAND .... SD is not in the context.
Thanks anyway!

[SOLVED] Memory seemed to be full, but it's actually a lot of free space available

My phone: S2 with CM 12.1 (latest nightly)
Hi,
since 2 days my phone has an odd behaviour.
In the first place I'd tried to take a screenshot. But in the notification only a note appear, that the "screenshot couldn't be captured". It doesn't matter in which app I try to take a screenshot.
The second problem is, when I try to take a picture with the default camera app. It appears, that the app it take the photo, but it doesn't save any.
The third odd behaviour is, that within the gallery app, it show all the picture folders and images within, but not a single thumbnail nor the picture itself in the detail view.
I can't save any (type of) file to the phone memory.
My first thought was, maybe the memory on the internal SD doesn't have enough space. But here it goes really weird. Following statistic by DiskInfo app:
- System (FACTORYFS) 540 MB free (of 1 GB) - sidenote - I had repit(ed) the partions with lanchons script.
- Data (DATAFS) 3,9 GB free (of 6 GB)
- internal SD (UMS) 2,2 GB free (of 7,5 GB)
Things which worked well:
- Text messaging (but I can't receive picture or videos)
- Reading Twitter and see all images (but can't save any of them)
- Browsing with Firefox (but can't download any document or file)
Does anyone have any idea what's going wrong?
I solved the problem.
By using the latest version of lanchons repit script, which seems to repair something.
Here some parts of the recovery.log:
Code:
Cluster 34558 out of range (42174573 > 982078). Setting to EOF.
[...]
Cluster 35069 out of range (101237010 > 982078). Setting to EOF.
[...]
/DCIM/Camera/IMG_20160213_103344.jpg
Contains a free cluster (34432). Assuming EOF.
/DCIM/Camera/IMG_20160213_103344.jpg
[...]
/gReader/.cache/-2010898466/img_10
File size is 72812 bytes, cluster chain length is 8192 bytes.
Truncating file to 8192 bytes.
Reclaimed 723 unused clusters (5922816 bytes).
Free cluster summary wrong (285140 vs. really 285863)
Auto-correcting.
Starting verification pass.
Performing changes.
/dev/block/mmcblk0p11: 23293 files, 696214/982077 clusters
info: errors detected, retrying the file system check
dosfsck 3.0.12, 29 Oct 2011, FAT32, LFN
Starting check/repair pass.
Starting verification pass.
[...]

Categories

Resources