Guest LowRun Posted October 21, 2010 Report Posted October 21, 2010 Hi I flashed your kernel and the init-mods on r8 but couldn't find any info on how to use that once done. I checked in with aLogCat and governor as a filter and saw nothing. What am i missing?
Guest Sub501 Posted October 21, 2010 Report Posted October 21, 2010 (edited) Hi I flashed your kernel and the init-mods on r8 but couldn't find any info on how to use that once done. I checked in with aLogCat and governor as a filter and saw nothing. What am i missing? For powermanagement (screen-state) script: Filter by 'pwrmgt' in aLogCat, then switch the screen off then on. Still not working? Check if you have the config file /data/etc/powermanagement.conf . For undervolt (also useful to see the overclock frequencies): Install a terminal app on your phone . Start the terminal then enter: cat /proc/undervolt You should see the voltage table (default|current|frequency). Not working? Check if the undervolt module is loaded: lsmod | grep undervolt Not loaded? A little debug is required but I hope is not the case :-). Cheers. Edited October 21, 2010 by Sub501
Guest el_boufono Posted October 21, 2010 Report Posted October 21, 2010 The linux kernel is governed by different power modules (or settings) that scales the frequency dynamically. Each has it's pluses and minuses. Each is for a specific reason. This kernel includes interactive, ondemand, powersave, userspace and performance governors. The default one that is used by HTC is the ondemand governor. Google developed the interactive governor. What governor is best is just a matter of taste. Interactive is snappier than ondemand but some say it uses more battery, powersave uses the least amount of battery but is also the slowest as it keeps the CPU at it's lowest possible freq. (245Mhz default on this phone), performance uses the most amount of battery but is also the fastest as it keeps the CPU at it's highest possible freq. (998Mhz default and it can be raised by overclocking). Overclocking the phone and also using the performance governor is not recommended as it may damage your phone. You can find info about them here My my thank you! Al is clear now! Thanks alot.
Guest TheUntouchable Posted October 21, 2010 Report Posted October 21, 2010 For powermanagement (screen-state) script: Filter by 'pwrmgt' in aLogCat, then switch the screen off then on. Still not working? Check if you have the config file /data/etc/powermanagement.conf . For undervolt (also useful to see the overclock frequencies): Install a terminal app on your phone . Start the terminal then enter: cat /proc/undervolt You should see the voltage table (default|current|frequency). Not working? Check if the undervolt module is loaded: lsmod | grep undervolt Not loaded? A little debug is required but I hope is not the case :-). Cheers. Just tested these things for fun, after updating my r9 (old script included) with your newest one and the new kernel. Everything seams to work right :P
Guest woti17 Posted October 22, 2010 Report Posted October 22, 2010 for further power saving: does somebody know? is it somehow posssible to permanent reduce the default 100mW (!) tx power to somewhat lower value? iwconfig eth0 tx 10mW would do it, but is lost after disabling wifi and enabling again
Guest Sub501 Posted October 22, 2010 Report Posted October 22, 2010 (edited) for further power saving: does somebody know? is it somehow posssible to permanent reduce the default 100mW (!) tx power to somewhat lower value? iwconfig eth0 tx 10mW would do it, but is lost after disabling wifi and enabling again I think it is possible. Stay tuned may be I release something this weekend. Stupid question... from where did you get the wireless-tools? My R8 doesn't has iwconfig. If I find an ARM binary it will save me some time. Edited October 22, 2010 by Sub501
Guest David_P Posted October 22, 2010 Report Posted October 22, 2010 @Sub501, Seen this SD speed fix over on XDA: http://forum.xda-developers.com/showthread.php?t=815557 Will applying it overwrite your gov from the r9 kitchen? Cheers David P
Guest woti17 Posted October 22, 2010 Report Posted October 22, 2010 (edited) I think it is possible. Stay tuned may be I release something this weekend. Stupid question... from where did you get the wireless-tools? My R8 doesn't has iwconfig. If I find an ARM binary it will save me some time. i'm on a modified aura sense rom 7.9 atm, which has the iwconfig binary (execution called in /system/bin/ssts screenstate scaling script) and use your kernel and scripts btw, works well Edited October 22, 2010 by woti17
Guest Sub501 Posted October 22, 2010 Report Posted October 22, 2010 @Sub501, Seen this SD speed fix over on XDA: http://forum.xda-developers.com/showthread.php?t=815557 Will applying it overwrite your gov from the r9 kitchen? Cheers David P Of course, it is a different kernel with different version magic. But why doing this in kernel instead of runtime config? Normally /etc/sysctl.conf should (not tested yet) solve without patching the kernel. example: vm.max-readahead=64 vm.min-readahead=32 then sysctl -p to load it. Good idea of init-mod improvement ;-).
Guest David_P Posted October 22, 2010 Report Posted October 22, 2010 Of course, it is a different kernel with different version magic. But why doing this in kernel instead of runtime config? Normally /etc/sysctl.conf should (not tested yet) solve without patching the kernel. example: vm.max-readahead=64 vm.min-readahead=32 then sysctl -p to load it. Good idea of init-mod improvement ;-). Since I am not a dev, that all went totally above my head, but thanks for the clarification :-) David P
Guest woti17 Posted October 22, 2010 Report Posted October 22, 2010 Of course, it is a different kernel with different version magic. But why doing this in kernel instead of runtime config? Normally /etc/sysctl.conf should (not tested yet) solve without patching the kernel. example: vm.max-readahead=64 vm.min-readahead=32 that will probably not work, because the kernel on xda is patched for readahead settings
Guest Eyonik Posted October 22, 2010 Report Posted October 22, 2010 could you probably include something like this in your kernel Sub501? :P
Guest LowRun Posted October 22, 2010 Report Posted October 22, 2010 For powermanagement (screen-state) script: Filter by 'pwrmgt' in aLogCat, then switch the screen off then on. Still not working? Check if you have the config file /data/etc/powermanagement.conf . For undervolt (also useful to see the overclock frequencies): Install a terminal app on your phone . Start the terminal then enter: cat /proc/undervolt You should see the voltage table (default|current|frequency). Not working? Check if the undervolt module is loaded: lsmod | grep undervolt Not loaded? A little debug is required but I hope is not the case :-). Cheers. Thank you very much. At first i thought it was not working as i was looking for the config files but was only showed an empty /data directory in EStrong file explorer because i forgot to give it superuser privileges. Everything is fine now. I could see the switching in aLogCat and the voltage table with cat /proc/undervolt. Only problem is even tho' i know it's working i couldn't perform a "lsmod | grep undervolt" as the "|" key would not work, it's there but does nothing when i select it. I started playing around with conf files and will keep on doing so to find my sweet spot. Thanks again for taking the time to deal with my inabilities.
Guest woti17 Posted October 22, 2010 Report Posted October 22, 2010 (edited) Thank you very much. At first i thought it was not working as i was looking for the config files but was only showed an empty /data directory in EStrong file explorer because i forgot to give it superuser privileges. Everything is fine now. I could see the switching in aLogCat and the voltage table with cat /proc/undervolt. Only problem is even tho' i know it's working i couldn't perform a "lsmod | grep undervolt" as the "|" key would not work, it's there but does nothing when i select it. I started playing around with conf files and will keep on doing so to find my sweet spot. Thanks again for taking the time to deal with my inabilities. lsmod alone is enough btw grep-ing for undervolt in the output of the command is only useful when there is a massiv amount of modules loaded, so that only the one is displayed that matches the grep expression "undervolt" in the output of lsmod you should see undervolt as _one_ of them modules loaded Edited October 22, 2010 by woti17
Guest Sub501 Posted October 22, 2010 Report Posted October 22, 2010 (edited) - Edited October 22, 2010 by Sub501
Guest Sub501 Posted October 23, 2010 Report Posted October 23, 2010 that will probably not work, because the kernel on xda is patched for readahead settings Yeah, http://www.redhat.com/magazine/001nov04/features/vm/ is somehow out of scope. The min/max-readahead keys are not found.
Guest Sub501 Posted October 23, 2010 Report Posted October 23, 2010 (edited) Yeah, http://www.redhat.com/magazine/001nov04/features/vm/ is somehow out of scope. The min/max-readahead keys are not found. The vanilla 2.6.35 kernel has 128/16 for max/min . Now, I have to find why HTC reduced min/max to 4kbytes . Don't like to change until I understand the reasons they lowered to 4. From: http://www.redhat.com/magazine/001nov04/features/vm/ " min-readahead ......... By raising this value, the Linux kernel allows the readahead value to grow larger, resulting in more blocks being prefetched from disks which predictably access files in uniform linear fashion. This can result in performance improvements but can also result in excess (and often unnecessary) memory usage. Lowering this value has the opposite affect. By forcing readaheads to be less aggressive, memory may be conserved at a potential performance impact. max-readahead Like max-readahead, min-readahead places a floor on the readahead value. Raising this number forces a file's readahead value to be unconditionally higher, which can bring about performance improvements provided that all file access in the system is predictably linear from the start to the end of a file. This, of course, results in higher memory usage from the pagecache. Conversely, lowering this value, allows the kernel to conserve pagecache memory at a potential performance cost. " Try this: echo "128" > /sys/block/mmcblk0/bdi/read_ahead_kb It should set read ahead for SDcard only. Let me know if this mod is working (your SDcard performance is imporved). Edited October 23, 2010 by Sub501
Guest woti17 Posted October 23, 2010 Report Posted October 23, 2010 (edited) echo "128" > /sys/block/mmcblk0/bdi/read_ahead_kb It should set read ahead for SDcard only. Let me know if this mod is working (your SDcard performance is imporved). just out of curiosity: what sense makes readahead on a sdcard with none moving/rotating parts? this is useful on rotating harddisks. where sectors are read because they would be used later but the head is now at a point and can also read the data while there for later? on a static storage like the sd card, mmmh? it maybe also may to speed down the transfer rate if the controller is overruled with harddisk preferences for readahead? well and the same goes for nand btw. Edited October 23, 2010 by woti17
Guest Sub501 Posted October 23, 2010 Report Posted October 23, 2010 just out of curiosity: what sense makes readahead on a sdcard with none moving/rotating parts? this is useful on rotating harddisks. where sectors are read because they would be used later but the head is now at a point and can also read the data while there for later? on a static storage like the sd card, mmmh? it maybe also may to speed down the transfer rate if the controller is overruled with harddisk preferences for readahead? well and the same goes for nand btw. Here are my assumptions: it is something like caching. You find data in memory then no IO penalty. IO penalty is not only in rotating devices, can be in drivers, chipset, bus, usb hubs and so on. My SDCARD is OK with stock 4kbytes and I will not include the patch in the kernel but if peoples found that readahead is boosting their sdcard performance then why not helping them with a configurable init mod...
Guest woti17 Posted October 23, 2010 Report Posted October 23, 2010 (edited) Here are my assumptions: it is something like caching. You find data in memory then no IO penalty. IO penalty is not only in rotating devices, can be in drivers, chipset, bus, usb hubs and so on. My SDCARD is OK with stock 4kbytes and I will not include the patch in the kernel but if peoples found that readahead is boosting their sdcard performance then why not helping them with a configurable init mod... well. this seems logical, but then, it would likely not be in the kernel as the kernel doesn t know about userspace programms doing prefetch into memory and what i have read about solid state disks, you turn off readahead to have not the effect of slowing down because its pointless to use readahead on non rotating drives should be something like ureadahead in ubuntu then, which prefetches infos _about_ files that are nessessary for booting to make boot faster. and i wonder if the kernelfunction readahead also is used for other i/o than harddisk, cdrom etc but then im no kernel dev Edited October 23, 2010 by woti17
Guest Sub501 Posted October 23, 2010 Report Posted October 23, 2010 (edited) well. this seems logical, but then, it would likely not be in the kernel as the kernel doesn t know about userspace programms doing prefetch into memory and what i have read about solid state disks, you turn off readahead to have not the effect of slowing down because its pointless to use readahead on non rotating drives should be something like ureadahead in ubuntu then, which prefetches infos _about_ files that are nessessary for booting to make boot faster. and i wonder if the kernelfunction readahead also is used for other i/o than harddisk, cdrom etc but then im no kernel dev Yes as I said it will not be in kernel but in init mods. http://www.mail-archive.com/linux-embedded...g/msg02591.html "As for SSD, I find that Intel X25-M SSD desires large readahead size > > even for sequential reads" On SSD seek time is let's say 0 but read is not instant. Anyway, who want to play with readahead and post some results... Edited October 23, 2010 by Sub501
Guest woti17 Posted October 23, 2010 Report Posted October 23, 2010 (edited) Try this: echo "128" > /sys/block/mmcblk0/bdi/read_ahead_kb It should set read ahead for SDcard only. Let me know if this mod is working (your SDcard performance is imporved). sd card speed test from market aura 7.9 kernel - 2.6.35-gd96f2c0-sub501 #1 start cat /sys/block/mmcblk0/bdi/read_ahead_kb =4 echo xy > /sys/block/mmcblk0/bdi/read_ahead_kb read/write in MB/s without ( xy = 4k) 6/4, Buffer 1MB with xy=8k 9/5 (1MB) 5/4 (10MB) with 16k 11/5 (1MB) 11/5 (10MB) with 32k 11/5 (1MB) 11/5 (10MB) with 64k 14/4 (1MB) 13/4 (10MB) with 128k 16/5 (1MB Buffer) 15/5 (10MB Buffer) with 256k 16/5 (1MB) 16/5 (10MB) with 512k 15/5 (1MB) 16/5 (10MB) with 1024k 15/5 (1MB) 17/5 (10MB) seems 256-1024 is best for 10MB, 128-256 best for 1MB cannot test for < 1MB, would be interesting with loads of small files Edited October 23, 2010 by woti17
Guest Sub501 Posted October 24, 2010 Report Posted October 24, 2010 sd card speed test from market You did an excellent job. It's time for a new init mods update. :-)
Guest System of a pWne!^ Posted October 24, 2010 Report Posted October 24, 2010 (edited) Hey Sub501, may you add the acpu table of this kernel please? http://forum.xda-developers.com/showthread.php?t=801435 I'm currently using this kernel but I want to switch to yours. What I like most of his kernel are the new CPU steppings (more steps and even down to 128 MHz). My suggestion is, not to take the table from his post (it's an older afaik) but the one from his source. Thanks in advance. Edited October 24, 2010 by System of a pWne!^
Guest Sub501 Posted October 24, 2010 Report Posted October 24, 2010 Hey Sub501, may you add the acpu table of this kernel please? http://forum.xda-developers.com/showthread.php?t=801435 I'm currently using this kernel but I want to switch to yours. What I like most of his kernel are the new CPU steppings (more steps and even down to 128 MHz). My suggestion is, not to take the table from his post (it's an older afaik) but the one from his source. Thanks in advance. Have you ever look in /data/etc/undervolt.conf ? You can edit this file and put your voltage table, save, reboot and that's all. Example: 950 1050 19200 950 1050 128000 950 1050 245000 975 1050 384000 975 1050 422400 1000 1050 460800 1025 1075 499200 1025 1100 537600 1050 1100 576000 1075 1125 614400 1100 1150 652800 1125 1175 691200 1150 1200 729600 1175 1200 768000 1200 1225 806400 1200 1250 844800 1225 1275 883200 1225 1300 921600 1250 1300 960000 1250 1300 998400 1275 1300 1036800 1275 1300 1075200 1300 1300 1113600
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now