[TUT] - Enabling JIT on the Mini - Sony Ericsson XPERIA X10 Mini

Method 1 was removed due to method 2 being much more effective:
Method 2
1. download this http://bit.ly/JiT-toggle
2. use z4root to root your phone. install Titanium backup and see if busybox is activated, if not, click Problems?.
3. Extract the zip JiT-toggle-0.1.zip in your computer.
4. Use root explorer to copy your build.prop to sdcard, and then to the computer.
5. Copy it to JiT-toggle-0.1/vmlibs_stock and to vmlibsv2 too.
6. Open the one in vmlibsv2 with notepad++ (I say notepad++ because it displays the lines properly, but you may be able to do it with the stock notepad).
7. Do the following:
replace
Code:
Code:
DEVICE_PROVISIONED=1
with
Code:
Code:
#DEVICE_PROVISIONED=1
dalvik.vm.heapsize=30m
and then replace
Code:
Code:
kernel.log=default
with
Code:
Code:
#kernel.log=default
debug.sf.hw=1
then at then end of the file, add
Code:
Code:
dalvik.vm.execution-mode=int:jit
8. Save the file.
9. Rename the folder named "JiT-toggle-0.1" to "jit" and copy it to the sdcard.
10. Open cmd and write:
Code:
adb shell
su
cd /sdcard/jit
sh enable_jit.sh
11. It will reboot.
12. You have now jit enabled
_________________________________
You can check if jit is enabled by following these steps:
1. With the phone connected, open a cmd window.
2. Type:
adb shell
dalvikvm -k
A whole bunch of text will appear, you are interested in the last lines, if you have jit it should say:
Configured with: debugger profiler jit show_exception=1
If instead of "jit" you read something that starts with "h", then you failed and still don't have jit enabled.
thanks go to:
loger8
mclarenvj

What i gain with Jit enable?

It will speed up the device, this may help if anyone wants more info:
Quote:
All Android devices could be getting a noticeable performance boost later this year. We have seen companies like Myriad pushing their Dalvik Turbo compiler which they claim offers “3x faster applications, richer game graphics and better battery life to Android”.
Myriad is working with carriers and handset makers to incorporate their software into their Android builds, but it looks Google might beat them to it.
Google has assembled their own team of engineers that is working on a Dalvik JIT Compiler for Android. JITstands for “just in time” compilation, and allows software to run faster by “compiling bytecode into native machine code at runtime which substantially increases performance”. I’m not going to pretend that I’m an expert on JIT, so I’ll defer to Wikipedia if you want the full scoop.
As some of you already know, JIT is in the Android repository and working right now. I’ve loaded the latest kernel that supports (correction: JIT has nothing to do with the kernel version, but some custom roms include both) it on my Nexus One and saw my benchmark scores go up 250-300%.
Click to expand...
Click to collapse

495 points with quadrant. where I can see some serious improvements?

Termodonte said:
495 points with quadrant. where I can see some serious improvements?
Click to expand...
Click to collapse
495 with jit?
Think you have made a mistake coz thats way to low for x10 mini with JIT
And confirmed this works on mini pro
You forgot you need to edit the 'heapsize' in build.prop to 30
Then jit will work better
Sent from my U20i using XDA App

I tried to run the test again and the result was 565. YEA!

Not working with me.
Tried it twice, the 2nd with heapsize=30 and I get MFLOPS 4.306.
531 on Quadrant.

X-static said:
Not working with me.
Tried it twice, the 2nd with heapsize=30 and I get MFLOPS 4.306.
531 on Quadrant.
Click to expand...
Click to collapse
are you using linpack app?
4395 mflops with 24 heapsize

Yes. Linpack for the MFLOPS test.
Should be around 7/8 with jit.

There is actually another way of doing this, worked 100% to me. Would be great you could put it as method2, for people who are scared of typing too much in console.
1. download this http://bit.ly/JiT-toggle
2. use z4root to root your phone. install Titanium backup and see if busybox is activated, if not, click Problems?.
3. Extract the zip JiT-toggle-0.1.zip in your computer.
4. Use root explorer to copy your build.prop to sdcard, and then to the computer.
5. Copy it to JiT-toggle-0.1/vmlibs_stock and to vmlibsv2 too.
6. Open the one in vmlibsv2 with notepad++ (I say notepad++ because it displays the lines properly, but you may be able to do it with the stoc notepad).
7. Look for these lines and put EXACTLY like this:
#DEVICE_PROVISIONED=1
dalvik.vm.heapsize=30m
#kernel.log=default
debug.sf.hw=1
8. Add this at the end:
dalvik.vm.execution-mode=int:jit
9. Save the file.
10. Rename the folder named "JiT-toggle-0.1" to "jit" and copy it to the sdcard.
11. Open cmd and write:
Code:
adb shell
su
cd /sdcard/jit
sh enable_jit.sh
12. It will reboot.
13. You have now jit enabled
PD: You can also deactivate jit with this, disable_jit.sh instead of enable_jit.sh.

tried with 30m of heapsize, no significant changes

That one works.
quadrant: 565
MFLOPS: 7.403
I won't recommend to use the disable script. Had problem with it before.

So method 2 works for you guys? I'll add it to the OP after I see a thumbs-up.

it worked also for me, i think some .so libraries are missing in the first method.
anyway, 7,68 mflops now. thank you guys
edit: in first method kernel log is not disabled

hmm.. i think you're right because im getting 3/4 mflops... well ill give method 2 a shot and ill replace my tut with that one

hmm.. i think you're right because im getting 3/4 mflops... well ill give method 2 a shot and ill replace my tut with that one
Click to expand...
Click to collapse
Glad I could help ^^ could anyone try to do this by executing the script directly with root explorer, instead of using cmd? It would be awesome if it worked that way
Sent from my E10i using XDA App

bricked
i bricked my mini all was perfect when the mini was to about reboot i accidentally removed my usb cable should i removed it or leave it connected

Enabled with method 2
Quadrant: 516 pts
Linpack: 4.237 Mflops
It should be faster or not??

norberto_ said:
Enabled with method 2
Quadrant: 516 pts
Linpack: 4.237 Mflops
It should be faster or not??
Click to expand...
Click to collapse
My mini scores:
Quadrant: 595 pts
Linpack: 7.331 Mflops

what would happen if i increased the heapsize to say 40m?

Related

[Android] Overclocking - How far can you push your nike?

*** WARNING: Overclocking may damage your device! Use at own risk! ***
Did you know that you can easily overclock your nike in android? You just have to run the following commands from a shell:
Code:
su
echo 4 > /sys/module/clock_7x00/parameters/ahb_div
echo 528 > /sys/module/clock_7x00/parameters/a11
This sets your nike to 528MHz (400MHz is default) after the next sleep/resume. You can exchange the '528' by a different clock to try. For easy oc I recommend to copy the last 2 lines from the code into a file named 'oc.sh' on your sdcard. Overclocking is then done in the shell by typing:
Code:
su
sh /sdcard/oc.sh
The overclock stays at the set value until the next reboot. I am running @528MHz now for a few days and have encountered no problems at all, battery life is about the same. Speedup is measured in benchmark but as myns buils is ridiculusly fast at stock speed alredy, the speedup is not really noticeable.
590MHz locks my system instantly.
could you provide some more details? for example how to get to a shell in android??
mblaster said:
but as myns buils is ridiculusly fast at stock speed .
Click to expand...
Click to collapse
could you provide a link for this build??
You get a shell if you start the app 'better terminal' or 'terminal emulator'. There is a thread for this build, search is your friend, double posts ain't.

[TUTORIAL] Run Ubuntu 10.10 on Nexus One

Run Ubuntu 10.10 on Nexus One
--------------------------------
Background:
In June 2010, XDA zedomax got Ubuntu 9.04 running on Nexus One, tutorial is available at this thread:
http://forum.xda-developers.com/showthread.php?t=718952
I continued studying the tutorial and worked out a way to make Ubuntu 9.04 running better, smoother and cause less error, here's my post:
http://forum.xda-developers.com/showthread.php?t=815532
Recently HTC_Linux team has released version 0.3 of their Ubuntu image, compare to the original guide provided by zedomax, the v0.3 release is based on the latest Ubuntu 10.10. So I thought about making this tutorial to guide you to run Ubuntu 10.10 on your Nexus One.
--------------------------------
What benefits will you get from running Ubuntu 10.10 on Nexus One (at least):
1. Fully functional Linux terminal, with all standard Linux command line utilities
2. Fully functional desktop browser Firefox 3.6.13
3. Ability to compile and run native Linux applications
4. Bunch of graphical Internet and utility applications as shown in the screenshots
--------------------------------
Credit:
Thanks to the great XDA-developers community.
Thanks to Zedomax for providing the original tutorial of running Ubuntu on Nexus One.
Thanks to HTC_Linux team for creating the optimised Ubuntu 10.10 image file.
--------------------------------
Now the tutorial starts.
Preparation:
1. A micro SD card at least 4GB in capacity, 8GB/16GB is recommended
2. (Optional) If you're using Froyo App2SD, move all your applications which are on SD card back to Internal Storage, or you may also uninstall all applications that are on SD card. If you fail to do so, you won't be able to enter Ubuntu. However I've discovered a way that you won't need to move or uninstall apps on SD card, will discuss later.
3. Basic Linux shell knowledge
Then:
1. Get Ubuntu 10.10 from this post (file name: hd2-ubuntu_0.3.zip): http://forum.xda-developers.com/showthread.php?t=889433
2. Download attached scripts.zip
3. On your computer, make a directory on a partition that has more than 3.5GB available space, name the directory “ubuntu” (case-sensitive!)
4. Extract three scripts (b, e, u) from scripts.zip to the directory ubuntu
5. Once you finish download hd2-ubuntu_0.3.zip, extract linux/rootfs.ext2 to the directory ubuntu
6. In your ubuntu directory, rename rootfs.ext2 into ubuntu.img (case-sensitive!)
7. Now verify that you have the following files in your computer's ubuntu directory: b, e, u, ubuntu.img
8. Copy the whole ubuntu directory onto your SD card, put the SD card back to your phone
9. Power up your Nexus One
Now we have some script work:
1. Run a terminal application from your phone (e.g. Android Terminal, Better Terminal Emulator)
2. type “cd /sdcard/ubuntu” (enter)
3. type “sh u” (enter)
4. If you see “Type 'b' to boot Ubuntu”, then you're almost there!
5. Type “b” (enter)
6. If you see “[email protected]:/#” (like shown in screenshot) Congratulations! Now you're running Ubuntu 10.10 on your Nexus One!
Whenever you want to enter Ubuntu again, simply type “b” (enter) in your Android Terminal.
To properly exit from Ubuntu, you must type “exit” from Ubuntu terminal.
If your Android terminal application gets killed by Android system (i.e. you lost Ubuntu terminal), you need to go back to Android terminal, type “e” (enter), that will properly unmount Ubuntu.
Very often that you can get “loop device busy” error when exiting from Ubuntu, in that case, type “e” (enter) multiple times (it's harmless to run “e” script multiple times, don't worry). If still you get “loop device busy” error, don't worry, ignore it then.
--------------------------------
(Optional) If you would prefer working with GUI, now let's do some extra script work:
1. Install “android-vnc-viewer” from Market (freeware)
2. Enter Ubuntu terminal
3. Make sure that you have network connection (Wi-fi recommended)
4. type “apt-get update” (enter), and wait till it finishes
5. type “apt-get install tightvncserver” (enter) and answer “y” to the question
6. After installed tightvncserver, type “cd /bin” (enter)
7. Type the following commands (all are case-sensitive!):
“cat > x” (enter)
“rm -r -f /tmp” (enter)
“mkdir /tmp” (enter)
“chmod 777 /tmp” (enter)
“export USER=root” (enter)
“export XKL_XMODMAP_DISABLE=1” (enter)
“vncserver -geometry 1024x800” (enter)
(enter)
(press and hold trackball and click D on keyboard)
“chmod 777 x” (enter)
8. The above procedure makes a script named “x”, whenever you want to start GUI, you need to type “x” (enter).
Notice that the first time (only the first time) you run “x” script you'll be prompt to enter a password for VNC connection, then you'll be asked whether to create a “view-only” password, since it is not necessary, answer “n” to the question.
9. Start “android-vnc-viewer”, create a new connection with the following settings:
Nickname: (anything you like to identify the connection)
Password: the VNC connection password that you created when ran the “x”script
Address: localhost
Port: 5901
Color format: 24-bit color (4 bpp)
Click “Connect” button, and in about a minute, you'll see your Ubuntu 10.10 desktop!
10. We still need to create one final script called “s”, now go back to your Ubuntu terminal and type:
“cd /bin” (enter)
“cat > s” (enter)
“export USER=root” (enter)
“vncserver -kill :1” (enter)
“vncserver -kill :2” (enter)
“sudo reboot” (enter)
“sudo halt” (enter)
(enter)
(press and hold trackball and click “D” on keyboard)
“chmod 777 s” (enter)
11. If you have GUI running, you * MUST * type “s” (enter) to stop VNC server before you exit from Ubuntu terminal!
In case that your Android kills your Android Terminal application and you still have VNC server running, do the following steps:
a. Start Android Terminal
b. type “b” (enter) to bring back Ubuntu terminal
c. type “s” (enter) to stop VNC server
d. type “exit” (enter) to exit from Ubuntu terminal
Fail to do so you will have problem with VNC connection next time you use it.
--------------------------------
What are not working in Ubuntu:
1. Sound
2. Some applications may not run (I guess, due to Android memory management mechanism)
--------------------------------
A little trick to access SD card from your Ubuntu:
1. Install “SwiFTP” from Market (freeware)
2. Set up FTP server using SwiFTP
3. In Ubuntu, “Places → Connect to Server” then:
Service type: FTP (with login)
Server: localhost
Port: (port number specified in SwiFTP, default is 2121)
Folder: /
User Name: (user name specified in SwiFTP)
Then press “Connect” and enter your password specified in SwiFTP. Now feel free to access your phone's file system!
--------------------------------
How to bring up Ubuntu if you have applications installed on SD card using Froyo App2SD:
1. Make sure that your Android Terminal application is installed in Internal Storage
2. Put a shortcut to Android Terminal application on your home screen
3. Make sure you have got ubuntu directory and all its contents on SD card
4. Reboot your phone (stay sharp, these following steps require perfect timing!)
5. Once you enter lock screen, Immediately unlock it.
6. Enter Android Terminal and type “b” as quick as possible, do not press Enter yet!
7. Pay close attention to your notification bar, as soon as the “SD: Checking for errors” notification disappears (the little SD icon disappears), Immediately press Enter.
8. Now you should be in Ubuntu terminal, wait 1-2 minutes before you do anything else.
9. After 1-2 minutes, you may do whatever you want.
With some applications installed on SD card, you must do the procedure above to bring up Ubuntu terminal each time you reboot your phone.
--------------------------------
That's it! Thank you for reading this tutorial. Please feel free to make any comment or ask any question!
Awesome. I'll be trying this out as soon as I get a larger SD card. It would be great if you could upload a .zip with all of the scripts, downloads, etc. already placed in one folder; that would make it a lot easier.
Thx U for this Tutorial....it was really helpful...Can u fix the adobe flash thing...i know that sound will not work but just wondering if it can be installed.
yumcax said:
Awesome. I'll be trying this out as soon as I get a larger SD card. It would be great if you could upload a .zip with all of the scripts, downloads, etc. already placed in one folder; that would make it a lot easier.
Click to expand...
Click to collapse
Actually I thought about the same but here my uploading speed is 15kb/s maximum, so I'm not sure if I'm gonna upload a 600mb file...
reubenjack said:
Thx U for this Tutorial....it was really helpful...Can u fix the adobe flash thing...i know that sound will not work but just wondering if it can be installed.
Click to expand...
Click to collapse
Adobe Flash has no support for ARM architecture.. sorry, there's no way to install Adobe Flash plugin for Firefox on Ubuntu ARM.
OMG Im abt to die. Transfering the folder to my sd card takes 20 min. I really nid to get a better memory card (higher speed). SIGH..
Works nice on my N1 running MIUI 12.24..
BTW I have a question, if I wipe my phone(data,cache).. Would I need to perform any steps then?
Keshav_CoolDude said:
Works nice on my N1 running MIUI 12.24..
BTW I have a question, if I wipe my phone(data,cache).. Would I need to perform any steps then?
Click to expand...
Click to collapse
If you re-installed a rom (i.e. /system partition gets rewritten)
You'll need to execute the following commands on Android Terminal:
cd /sdcard/ubuntu
sh u
then type "b" to enter Ubuntu terminal
Happy New Year!
Hey,
In the OP you mention that some apps will not run because of the memory management? Is there a size threshold that this is start to be seen at or is it totally random on which things run/don't?
Thanks
houzuoguo said:
If you re-installed a rom (i.e. /system partition gets rewritten)
You'll need to execute the following commands on Android Terminal:
cd /sdcard/ubuntu
sh u
then type "b" to enter Ubuntu terminal
Happy New Year!
Click to expand...
Click to collapse
Okay.. Thanks for the guide..
Happy New Year..
Chopes said:
Hey,
In the OP you mention that some apps will not run because of the memory management? Is there a size threshold that this is start to be seen at or is it totally random on which things run/don't?
Thanks
Click to expand...
Click to collapse
I'm not very familiar with Linux kernel so sorry I can't give an accurate explanation
According to my observation, many applications in the Ubuntu 10.10 can successfully start (program title appears in task bar) but immediately they turn off by themselves.
And it seems to me that all those applications share a same characteristic: they're relatively bigger than others. For example, Terminal runs, Dictionary runs, Firefox runs, but Ubuntu Software Centre won't run.
So my guess is ... Android system would not allocate too much memory for an application in Ubuntu, thus they get killed before they could start.
I'll give this a one thumb up, because I got it working, got to play around a bit... it looks really nice... but I did a reboot of my phone after shutting it down properly, and now everytime I try to launch ubuntu again, I get a bunch of errors.
I've tried just about everything.... restoring to my nand backup I did before trying this, deleting the files off the sdcard and on my system relating to this, tried to set everything back up... but I still get errors and I can't get past them, even with trying "e" in the term.
FWIW, I'm on CM 6.1.1 and I do use DTa2sd with plenty of space left on all partitions. Here's a pastebin of my errors : http://pastebin.com/adCQ62iF
tehgeekguy said:
I'll give this a one thumb up, because I got it working, got to play around a bit... it looks really nice... but I did a reboot of my phone after shutting it down properly, and now everytime I try to launch ubuntu again, I get a bunch of errors.
I've tried just about everything.... restoring to my nand backup I did before trying this, deleting the files off the sdcard and on my system relating to this, tried to set everything back up... but I still get errors and I can't get past them, even with trying "e" in the term.
FWIW, I'm on CM 6.1.1 and I do use DTa2sd with plenty of space left on all partitions. Here's a pastebin of my errors : http://pastebin.com/adCQ62iF
Click to expand...
Click to collapse
Happy New Year!
Could you please go to Settings-> Application Settings-> Manage Applications-> on SD card and confirm there is no application on SD card?
Also please make sure you execute "b" after "Checking for Errors" notification disappears.
Running this distro does that mean i can use firesheep on my n1?
Awesome! What kind of battery life are you seeing using Ubuntu? Any apps in particular you've enjoyed having on your N1?
rossonza said:
Running this distro does that mean i can use firesheep on my n1?
Click to expand...
Click to collapse
According to my study Firesheep would require WinPcap to work, WinPcap is only available for Windows so unfortunately you can't use it.
Deathwish238 said:
Awesome! What kind of battery life are you seeing using Ubuntu? Any apps in particular you've enjoyed having on your N1?
Click to expand...
Click to collapse
I notice battery drains 2-3 mAh more when Ubuntu is idle, when actually using Ubuntu I notice 30-40mAh higher current draw. So actually it's not much
hey thanx houzuoguo,
working great on my n1....!!
is there any solution for the sound to run...??
I cant seem to get any of the "cat >" letters to work, it just hangs in the terminal.
houzuoguo said:
According to my study Firesheep would require WinPcap to work, WinPcap is only available for Windows so unfortunately you can't use it.
I notice battery drains 2-3 mAh more when Ubuntu is idle, when actually using Ubuntu I notice 30-40mAh higher current draw. So actually it's not much
Click to expand...
Click to collapse
Firesheep works in Ubuntu, you just have to compile it yourself.
1) Download the required dependencies:
Code:
sudo apt-get install autoconf libtool libpcap-dev libboost-all-dev libhal-dev xulrunner-1.9.2-dev
2) Install git:
Code:
sudo apt-get install git
3) Download the Firesheep source:
Code:
git clone https://github.com/codebutler/firesheep.git
4) Change to the Firesheep directory:
Code:
cd firesheep
5) Initialize it:
Code:
git submodule update --init
6) Compile it:
Code:
./autogen.sh && make
7) You'll find the file in the build directory.
hotweiss said:
Firesheep works in Ubuntu, you just have to compile it yourself.
1) Download the required dependencies:
Code:
sudo apt-get install autoconf libtool libpcap-dev libboost-all-dev libhal-dev xulrunner-1.9.2-dev
2) Install git:
Code:
sudo apt-get install git
3) Download the Firesheep source:
Code:
git clone https://github.com/codebutler/firesheep.git
4) Change to the Firesheep directory:
Code:
cd firesheep
5) Initialize it:
Code:
git submodule update --init
6) Compile it:
Code:
./autogen.sh && make
7) You'll find the file in the build directory.
Click to expand...
Click to collapse
Not to threadjack or anything of the sort but:
Does the above method work on getting firesheep installed on a n1 running ubuntu or is this just the way to install it assuming your running on normal hardware?
Second question, what is the resulting file?
Thanks,
Which terminal application are you using, and did you type the "cat >" on screen keyboard or copy&paste?

[GSM/CDMA -- IO OPTIMIZATION] EternityProject's V(R) I/O Scheduler Kernel Module

Welcome to another EternityProject Thread....
What do we have here?
It is the V(R) Scheduler! V(R) Scheduler is a reinforcement schedule in which the number of responses necessary to produce reinforcement varies from trial to trial.
It will produce an high rate of responding greatest activity of all schedules and responding rate is high and stable.
What do we need?
1. Willing to download something and pulling it on your phone
2. Absolutely no patience.
Download:
V(R) Scheduler Kernel Module: HERE
How to activate it:
Method 1:
1. Download it and.. cp /sdcard/downloads/vr-iosched.ko /tmp/
2. Insert it, so... insmod /tmp/vr-iosched.ko
3. Activate it. I use AnTuTu CPU Master Free: Advanced, I/O Scheduler: vr - then Apply.
Method 1 won't persist after a reboot.
Method 2:
1. Download it and.. cp /sdcard/downloads/vr-iosched.ko /tmp/
2. Use this script (AS ROOT on an app like Script Manager) for insmodding and setting it at boot time:
Code:
insmod /tmp/vr-iosched.ko
echo vr > /sys/block/mmcblk0/queue/scheduler
echo vr > /sys/block/mmcblk1/queue/scheduler
Method 2 persists after a reboot if the script is set on Script Manager (or similar) to be executed as ROOT and at every boot.
The Eternity Project Team Manager,
--kholk
Oh cool! Downloading it now!
When I run the script it says that the file cannot be found.
Where do I have to place the file?
Sorry but how do u download it... im on my phone and it just takes me to the website with a bunch of codings
Edit: ok i got it and i did method 2 with script manager... how do i kjnow if it is runnig?
Sent from my DROID RAZR using xda premium
Aashrey99 said:
When I run the script it says that the file cannot be found.
Where do I have to place the file?
Click to expand...
Click to collapse
You have to place the file in /tmp/
blkghost22 said:
Sorry but how do u download it... im on my phone and it just takes me to the website with a bunch of codings
Edit: ok i got it and i did method 2 with script manager... how do i kjnow if it is runnig?
Sent from my DROID RAZR using xda premium
Click to expand...
Click to collapse
You can check that it is running in two ways:
1. Download AnTuTu CPU Master Free and if the selcted iosched governor is vr it is working.
2. Open a root shell and type:
cat /sys/block/mmcblk0/queue/scheduler
cat /sys/block/mmcblk1/queue/scheduler
If the output contains "[vr]" and other schedulers (not closed in []) then it is working.
Note that the first method can give bad results on the "test" because I don't know if it is using the same method I'm using to apply the V(R) iosched to the disks. In any case, both will work (applying with CPU Master or with my script).
My scripts just makes sure that the scheduler is applied to both the internal eMMC and the external SDCard.
How do i download it every time i click on the link it opens the binary code!
therazrguy said:
How do i download it every time i click on the link it opens the binary code!
Click to expand...
Click to collapse
Right Click, "Save link as"
Working perfectly on XT910K
Much more responsive than before
Thanks!
Added script with ROM toolbox
Neutron90 said:
Right Click, "Save link as"
Click to expand...
Click to collapse
does it improve my benchmark performance?
Mine improved, since I/O scores and cpu scores go right up.
And scrolling is much more smoother....less spit second lags...
Keep up the good work Kholk!

[SCRIPT] MySwap v1.0 (SD and NAND) 13/11/2013

THIS IS A SCRIPT TO HAVE SWAP AND NOT A ROM!
I tested the swap on "CM10.x" by volk204 but there isn't a reason it shouldn't work on other rom versions.
version 1.0 13/11/2013 18:29 GMT+2
I experienced some lag with my wave due to its low ram memory. So after testing a few things i found myself more comfortable with setting up swapfile on sd card(NAND memory); after few minutes this terminal becomes really smooth. (It strangely is faster than setting it up on the phone memory, atleast for me)
The idea is mine, but checking around i found that many other script were made. I got the sleep line to boot part idea from "Defiant07 @ XDA" (http://forum.xda-developers.com/showthread.php?t=2359182). Everything else (as simple it is it's all mine)
Swap is the *nix term for virtual memory, that maybe many are familiar with on windows.
You set up a partition/file and use that as virtual memory. It will be much slower than real ram, but it will be much faster than reloading everything from disk everytime.
Code:
#!/system/bin/sh
# This script was authored by Defiant07 @ XDA. If you use/redistribute it, eve$
# Thanks to zeppelinrox most of all, but also many thanks to dk_zero-cool & gu5$
# Much thanks to pikachu01 @ XDA for permission to use the sysctl tweaks from T$
# Read Karl Marx!
# Nearly entirely modified by skyglow
swapfile="/storage/sdcard0/swapfile"
#swapsize in KB
swapsize=524288
swappiness=90
vfs_cache_pressure=100
dirty_background_ratio=5
dirty_ratio=20
dirty_writeback_centisecs=500
dirty_expire_centisecs=200
while [ ! "`ps | grep -m 1 [a]ndroid`" ]; do sleep 10; done
if [ ! -f "$swapfile" ]; then
dd if=/dev/zero of=$swapfile bs=1024 count=$swapsize
mkswap $swapfile
fi
# sleep 30
# mkswap $swapfile
swapon $swapfile
busybox sysctl -e -w vm.swappiness=$swappiness
busybox sysctl -e -w vm.vfs_cache_pressure=$vfs_cache_pressure
busybox sysctl -e -w vm.dirty_background_ratio=$dirty_background_ratio
busybox sysctl -e -w vm.dirty_ratio=$dirty_ratio
busybox sysctl -e -w vm.dirty_writeback_centisecs=$dirty_writeback_centisecs
busybox sysctl -e -w vm.dirty_expire_centisecs=$dirty_expire_centisecs
exit 0
Requirements
Superuser rights on terminal to change permission and copy this file
Configuration
1) set up "swapfile" field to where you want your swap
2) set up "swapsize" field to an appropriate value in KB! ( i think you should try values over 307200 => 300MB to have performance improvements)
(SD or NAND version)
SD version
size=512 MB
position=sdcard root
NAND version
size=300MB
position=bada application partition
How to install
1) Download the right zip from this page
2) Extract the file from the zip
3) Upload the file in some way on the phone
4) Become superuser
5) move it to "/system/etc/init.d"
6) this file should keep hits name "99myswap"
7) change permissions of "99myswap" to 755
8) change its rights to "root:shell"
9) done, next reboot your swap will be set up automatically
P.S.
How to check if swap is activated:
Open terminal
cat /proc/swaps
Swap filename should be displayed with the right size
[ADDED DEBUG SCRIPT]
Possible problems
1) System hangs on cyanogen loading screen ( rotating circle)
INVESTIGATING
2) Battery charge lasts less.
Any kind of virtual memory use more electrical power to perform write/read on disk (SD). This is a side effect of swap.
3) File format
*NIX file format is LF and not CR-LF (for reference why this happens http://en.wikipedia.org/wiki/Newline#Representations)
You can't edit the file with windows notepad, but use something else such as notepad++ and save it in LF coding.
4) System is slower
Possible causes are:
a) you have applications on the same filesystem where you placed the swap
b) your memory (such as SD card) is too slow. Swap will work, it will just go much slower. Try it with a better sd. I tested it with a class 4 and class 10 sdcard and they both speed up. I don't have any possibility at the moment to test a class 2. (reference http://en.wikipedia.org/wiki/Secure_Digital#Speeds)
5) How to change permissions (thanks Eltjo for copy paste from your answer)
Open terminal
Type: su
Type: cd /system/etc/init.d
Type: chmod 0755 99myswap
Type: chown root:shell 99myswap
6) zRam
On my mobile it's faster if i disable zRam from Settings > Performance > Memory Management > zRam .
Anyway i think outcome may change. Try both solutions.
could be possible to use free nand memory as swap instead of sd card?
cfernr said:
could be possible to use free nand memory as swap instead of sd card?
Click to expand...
Click to collapse
I added the NAND version that installs itself in the bada partition. If you installed the sd version remember to remove the swapfile.
darklight2k2 said:
I added the NAND version that installs itself in the bada partition. If you installed the sd version remember to remove the swapfile.
Click to expand...
Click to collapse
lets try both, thank you very much
no problem.
DEBUG REQUEST
Who had the loading screen on cyanogen circle may tell me which sd card class have?
The following procedure do not install the script, it just will work till reboot.
may them try to upload the script in a generic directory such as /storage/sdcard0 and execute it with
su
cd /storage/sdcard0
sh ./99myswap
I'd like the output of that command and the resulting /proc/swaps
then use the phone, (play/call/charge/reboot)
next boot start the script again please and tell me the resulting /proc/swaps again
Thank you for the help
seems work on my phone.
installed swapfile on nand and ram increased 30mb, but low improvement in real performance.
need to change zram options, but cant find this on my phone, maybe due to language discrepancy. can you explain better?
thank you a lot
I also cannot find zram a options under B.U.X V3.1 (4.3.1 CM10.2) by Tigrouzen
If you don't have the menu for zRam it's disabled by default. To see it you should enable all developer settings.
Settings > About phone > Build number (tap 7 times)
Some more tweaks will unlock.
saltcushy said:
I also cannot find zram a options under B.U.X V3.1 (4.3.1 CM10.2) by Tigrouzen
Click to expand...
Click to collapse
Unfortunally i didn't test that rom yet but i think the procedure above will work.
darklight2k2 said:
If you don't have the menu for zRam it's disabled by default. To see it you should enable all developer settings.
Settings > About phone > Build number (tap 7 times)
Some more tweaks will unlock.
Unfortunally i didn't test that rom yet but i think the procedure above will work.
Click to expand...
Click to collapse
tested and I have to say this is necessary if you want to enjoy a few extra mb in this phone.
I recommend nand swap because everybody have 300-400 unused mb in bada apps partition.
disabling zRAM seems also recommendable.
I hope everybody take care of this script for future ROM releases
*** I will decrease swappiness to 70 or 60, I think it is enough.
darklight2k2 said:
no problem.
DEBUG REQUEST
Who had the loading screen on cyanogen circle may tell me which sd card class have?
The following procedure do not install the script, it just will work till reboot.
may them try to upload the script in a generic directory such as /storage/sdcard0 and execute it with
su
cd /storage/sdcard0
sh ./99myswap
I'd like the output of that command and the resulting /proc/swaps
Thank you for the help
Click to expand...
Click to collapse
i've a samsung class 10 32gb.
i've not run the script with sh command, just copied it to /system/etc/init.d (aplied chmod and chown) and reboot the phone. after that it hangs on CM circle on first boot and have to re-install the rom. wipe data/factory reset didn't help.
best regards
JonasVFC said:
i've a samsung class 10 32gb.
i've not run the script with sh command, just copied it to /system/etc/init.d (aplied chmod and chown) and reboot the phone. after that it hangs on CM circle on first boot and have to re-install the rom. wipe data/factory reset didn't help.
best regards
Click to expand...
Click to collapse
To try to solve it i need to know what happens when executed with the sh command
darklight2k2 said:
To try to solve it i need to know what happens when executed with the sh command
Click to expand...
Click to collapse
after installing the rom again it can boot the first time but hangs on the second like everybody else
running with sh it runs ok
JonasVFC said:
after installing the rom again it can boot the first time but hangs on the second like everybody else
running with sh it runs ok
Click to expand...
Click to collapse
that's why i said not install in the problem request
problem is with chown, just run the chmod 755. didn't run chown command last time and it booted second and third time
edit: nevermind, it hanged again
darklight2k2 said:
that's why i said not install in the problem request
Click to expand...
Click to collapse
i did it with 2 different ways....with a fresh install between and both hang
JonasVFC said:
i did it with 2 different ways....with a fresh install between and both hang
Click to expand...
Click to collapse
You're just posting and posting what happens but not what i asked you to do to five me information.
darklight2k2 said:
You're just posting and posting what happens but not what i asked you to do to five me information.
Click to expand...
Click to collapse
i did what you asked, read again, i ran it with sh: it runs fine!! creates the swapfile and outputs some parameters that are in the script like swapiness and others....
JonasVFC said:
i did what you asked, read again, i ran it with sh: it runs fine!! creates the swapfile and outputs some parameters that are in the script like swapiness and others....
Click to expand...
Click to collapse
Hi, @JonasVFC.
I understand you've been running the Swap version of Android v2.1 Volk204. How do you get it?.
Yo, if I install the file in the directory 99myswap indicating the first page, but I get that the system does not start, stays on constantly CM logo.
A greeting.
chapito said:
Hi, @JonasVFC.
I understand you've been running the Swap version of Android v2.1 Volk204. How do you get it?.
Yo, if I install the file in the directory 99myswap indicating the first page, but I get that the system does not start, stays on constantly CM logo.
A greeting.
Click to expand...
Click to collapse
May you guys try the following attached file please?
when it hangs may you post the logfile created in the phone directory ( you can get it from bada)

[KERNEL][CM13] Kernel with ZRAM swap

Hello! After many years without development, today I'm sharing a new kernel with ZRAM and swap support for this device.
The kernel is based upon weritos' Cyanogenmod 13 kernel source code and should work on both rev. 1 and rev. 2 devices.
Installation procedure is as follows:
1. Download the latest TWRP, kernel build and modules.
2. Install the kernel and TWRP from ADB shell (the device must be booted into Android) or a terminal app:
Bash:
su (from a terminal app; not required from ADB shell)
cat </path/to/TWRP_image> > /dev/block/mmcblk0p13
cat </path/to/kernel_image> > /dev/block/mmcblk0p8
reboot recovery
3. Install the kernel modules:
Bash:
mount /dev/block/mmcblk0p21 /system
unzip -o </path/to/modules.zip> -d /system/lib/modules
4. Done! Reboot into Android.
NOTE: The < and > symbols should never be issued within the commands!
Version Information
Status: Beta (Bluetooth, camera recording and screen recording do not work.)
Created: 2021-05-11
Last Updated: 2021-05-12 (Import and enable Ultra KSM driver.)
I still have this device, will this kernel with twrp installed fix the crashing problems in cm 13, thanks for your effort
@Krush206 it's saying can't open zip file on the last step, how to fix??
SerjSX said:
@Krush206 it's saying can't open zip file on the last step, how to fix??
Click to expand...
Click to collapse
fixed it, I was supposed to write:
Code:
unzip -o /sdcard/modules.zip -d /system/lib/modules
instead of:
Code:
unzip -o /storage/emulated/0/modules.zip -d /system/lib/modules
in TWRP terminal.
However, how do I know if it successfully worked?? My phone booted up normally but no sign that shows if it worked 100% or not. @Krush206
not working
Turkish developers said:
I still have this device, will this kernel with twrp installed fix the crashing problems in cm 13, thanks for your effort
Click to expand...
Click to collapse
This is the reason I exported the ZRAM driver to the kernel. However, I have noticed it breaks Wi-Fi, so I will have to fix it for proper testing.
SerjSX said:
However, how do I know if it successfully worked?? My phone booted up normally but no sign that shows if it worked 100% or not.
Click to expand...
Click to collapse
Either install Termux (or a terminal app of your choice) or use ADB and issue the free -m command.
Krush206 said:
This is the reason I exported the ZRAM driver to the kernel. However, I have noticed it breaks Wi-Fi, so I will have to fix it for proper testing.
Either install Termux (or a terminal app of your choice) or use ADB and issue the free -m command.
Click to expand...
Click to collapse
Hi, thanks for your response. Just did i and looks like it worked, 59 total swap, used 58, and free 541.
Are you sure you checked the correct line? The total should be 255 (256), not 59.
can you compile a kernel for overclocking in stock room or cm 11 please our quttro needs it now
overclock kernel pls
Sorry for the delay. The battery of my device has swollen, so I cannot really check whether overclocking is possible or not.
However, though overclocking may be possible, it may cause system instability and crashes.
I could probably have a look at the code and see how to get it done, but I cannot post results and would not recommend overclocking.
The battery in my device was swollen, I found a battery and the best software for this device is 4.1.2. I want to try overclocking for this version. Bide 4.1.2 also does not play hd videos in the original software. Is there a code or a mod for this?
1.5 Ghz overclock pls
any update?
If you two, @Fever070720, @Turkish developers, are still looking into overclocking, please, send the output of the following command:
Code:
cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq

Categories

Resources