Go Back   Brighthand.com - SmartPhone and PDA Discussion > Software > Windows Mobile > General Windows Mobile (Pocket PC and Smartphone)

General Windows Mobile (Pocket PC and Smartphone) General Windows Mobile discussion (not device or brand specific)

Welcome to BrightHand.com! Have a PDA or SmartPhone related question?

Register and ask it here in the forums and remove this ad

Closed Thread
 
Thread Tools
Old 10-17-2006, 04:33 AM   #1
Solnyshok
Aficionado
 
Join Date: Apr 2006
Posts: 20
Exclamation Change PagePool for better speed on IPAQ hx4700/2xxx, dellx51(v)

Hi

Several weeks ago, xda-developers community learned about one important setting in all wm5 devices, called PagePool, that can significantly boost speed (at expense of free RAM - tradeoffs, tradeoffs...) of pretty much every WM5 device out there. PagePool is the amount of RAM given to running a code at any given time. So the advantage of having a bigger PP is felt when you run several heavy programs at once. Here is comment from Mike Calligaro (from WM team):

RAM is used by 2 things: Data and Code. Any code that can’t execute in place (XIP) in ROM needs to be loaded into RAM and executed from there.

The page pool puts a cap on how much ram is used for code. No data is ever loaded into the pool. If you have a 2M page pool and regularly have 4M of code in use, you’ll spend a lot of time loading pages into the pool and unloading other pages from the pool. On the other hand, if you regularly have 4M of code in use and you have an 8M page pool, then you’ll just have 4M of the pool filled and the other 4M sitting idle. In that case, making the page pool larger would have absolutely no beneficial effect. All it would do is remove RAM that otherwise might have been used for Data.

The likelihood of a 24M page pool having any beneficial effect is tiny. You’d have to have an enormous program with a ton of code. It’s pretty easy to write code that uses a lot of ram for data. But it’s challenging to write code that needs that kind of RAM for code.


here is a reference to xda-developers thread on same issue: http://forum.xda-developers.com/showthread.php?t=276630

Most of devices come with PP set between 4-8M. BlueAngel had only 2M and that was a reason why mamaich has uncovered the bottleneck of low PP.

Changing PagePool setting requires patching rom and reflashing it to device. Therefore, all of advise given here is for experienced users, who know how to restore bricked device (e.g. from SD card) in case anything goes wrong during flashing.

Users of almost all HTC communicators will find more relevant threads at xda-developers. Purpose of this thread is to share knowledge with the owners of non-communicator devices, that are not discussed on xda-dev forums.


I have looked on IPAQ 2110, hx4700, and dell x51v and found following PagePool values

hx4700 4.8M
Ipaq 2110 5M
Dell X51v 8M

Experience from xda forums tells that PDAs with 64M RAM would benefit from setting PagePool to 8M. Note that Dell x51v already has this, while ipaqs can do twice better. And for PDAs upgraded to 128M RAM, 16M is a reasonable value. Some people set it to 24 and even 32M, since their devices have enough memory anyway. I use PP=16M on my Ipaq and feel that now it feels faster than 2003se at times.

If you decide to change PagePool on your device, you need

official rom upgrade utility, run it and quit before the last step, the actual flashing. You'll find .nbf file in installator's folder (Dell owner's will have .img file, which they need to convert to nb0 with img2nb0f tool from here http://www.ppccool.com/index.php?act...e=post&id=1046
also please read this thread about flashing Dell with nb0 files
http://www.aximsite.com/boards/showthread.php?t=137015)

HP owners: I advise that you edit latest nbf (not 2.01) but you will later also need 2.01 flasher.

You can open nbf/nb0 file in any hexeditor (I use free XVI32.exe) and find following sequence

for hx4700
FF FF FF FF FF FF FF FF 9B 4F FF FF 64 B0 00 00 64 00 00 00 74 9A 1F 80 00 00 48 00
where last 4 words stand for PagePool as stored by processor. 00 00 48 00 means 480000 (pagepool=4.8M)

hx 2110 (WM 5.0 1.00.03.H RUS) just look for the shorter part of the same sequence, for example
FF FF FF FF FF FF FF FF 9B 4F FF FF 64 B0 00 00
you will find
FF FF FF FF FF FF FF FF 9B 4F FF FF 64 B0 00 00 ?? ?? ?? ?? ?? ?? ?? ?? 00 00 50 00
pagepool=5M

for DellX51v sequence will be
FF FF FF FF FF FF FF FF 9B 4F FF FF 64 B0 00 00 ?? ?? ?? ?? ?? ?? ?? ?? 00 00 80 00
pagepool=8M

Here are some values you may want to set there
00 00 80 00 =8M
00 00 C0 00 =12M
00 00 00 01 =16M
00 00 80 01 =24M
00 00 00 02 =32M
though I doubt anybody needs to go above 8M on 64M device and above 16 on 128M device.

Now, to flash it you need to use different procedures depending on device.

Dell users: please refer to the aximsite tutorial that I referenced above. You might need to calculate new CRC for you nb0 file. I do not own Dell, I just helped to patch nb0 and have not heard whether flashing went successful yet.

IPAQ users: you probably edit the latest nbf, but you will need to use the very first version of flasher (i.e. one converting 2003se to WM5, not the 2nd or N-th upgrade). I do not know why, but my flashing timed out twice at 99% when using latest flasher. Same applies to 2110 users. Multiple attempts of flashing with latest flasher, or even with cracked one, was hanging at 1-2%. Only "2003se to WM5" flasher actually worked.

You need to start upgrade utility in its original form (i.e. with unmodified nbf file) wait till it checks that IPAQ is right and connected to power, etc and checks the nbf file. It gives you the last menu, something like "NOW PRESS TO FLASH". At this moment, you need to exchange nbf file with modified one. Then you can start flashing.

I WARN YOU ABOUT DANGER OF BRICKING YOUR DEVICE DURING FLASHING EXPERIMENTS. I AM IN NO WAY LIABLE IF THAT HAPPENS TO ANYONE. DO NOT ATTEMPT IT IF SOMETHING IS UNCLEAR TO YOU IN THE ABOVEMENTIONED INSTRUCTIONS, OR IF YOU DO NOT HAVE ANY PREVIOUS EXPERINCE WITH FLASHING CUSTOMIZED ROMS

Having sad that - Good Luck!
__________________
Solnyshok

HP 4700 WM6/128RAM, Raon Everun 6+16GB SSD
Nokia 6120, BT GPS Holux 236
Solnyshok is offline  
Old 10-17-2006, 03:08 PM   #2
Solnyshok
Aficionado
 
Join Date: Apr 2006
Posts: 20
Default Re: Change PagePool for better speed on IPAQ hx4700/2xxx, dellx51(v)

I just got reports that 2 Dell X51v users and a ipaq 2490 have successfully flashed their devices with 16Mb PagePool.

User "Slimest" posted his instructions on AximSite...topic was promptly deleted by moderators of aximsite. Why?

Last edited by Solnyshok : 10-20-2006 at 01:54 AM.
Solnyshok is offline  
Old 03-14-2007, 12:00 PM   #3
cristianomc
Newbie
 
Join Date: May 2006
Posts: 1
Default Re: Change PagePool for better speed on IPAQ hx4700/2xxx, dellx51(v)

Quote:
Originally Posted by Solnyshok View Post
Hi

Several weeks ago, xda-developers community learned about one important setting in all wm5 devices, called PagePool, that can significantly boost speed (at expense of free RAM - tradeoffs, tradeoffs...) of pretty much every WM5 device out there. PagePool is the amount of RAM given to running a code at any given time. So the advantage of having a bigger PP is felt when you run several heavy programs at once. Here is comment from Mike Calligaro (from WM team):

RAM is used by 2 things: Data and Code. Any code that can’t execute in place (XIP) in ROM needs to be loaded into RAM and executed from there.

The page pool puts a cap on how much ram is used for code. No data is ever loaded into the pool. If you have a 2M page pool and regularly have 4M of code in use, you’ll spend a lot of time loading pages into the pool and unloading other pages from the pool. On the other hand, if you regularly have 4M of code in use and you have an 8M page pool, then you’ll just have 4M of the pool filled and the other 4M sitting idle. In that case, making the page pool larger would have absolutely no beneficial effect. All it would do is remove RAM that otherwise might have been used for Data.

The likelihood of a 24M page pool having any beneficial effect is tiny. You’d have to have an enormous program with a ton of code. It’s pretty easy to write code that uses a lot of ram for data. But it’s challenging to write code that needs that kind of RAM for code.


here is a reference to xda-developers thread on same issue: http://forum.xda-developers.com/showthread.php?t=276630

Most of devices come with PP set between 4-8M. BlueAngel had only 2M and that was a reason why mamaich has uncovered the bottleneck of low PP.

Changing PagePool setting requires patching rom and reflashing it to device. Therefore, all of advise given here is for experienced users, who know how to restore bricked device (e.g. from SD card) in case anything goes wrong during flashing.

Users of almost all HTC communicators will find more relevant threads at xda-developers. Purpose of this thread is to share knowledge with the owners of non-communicator devices, that are not discussed on xda-dev forums.


I have looked on IPAQ 2110, hx4700, and dell x51v and found following PagePool values

hx4700 4.8M
Ipaq 2110 5M
Dell X51v 8M

Experience from xda forums tells that PDAs with 64M RAM would benefit from setting PagePool to 8M. Note that Dell x51v already has this, while ipaqs can do twice better. And for PDAs upgraded to 128M RAM, 16M is a reasonable value. Some people set it to 24 and even 32M, since their devices have enough memory anyway. I use PP=16M on my Ipaq and feel that now it feels faster than 2003se at times.

If you decide to change PagePool on your device, you need

official rom upgrade utility, run it and quit before the last step, the actual flashing. You'll find .nbf file in installator's folder (Dell owner's will have .img file, which they need to convert to nb0 with img2nb0f tool from here http://www.ppccool.com/index.php?act...e=post&id=1046
also please read this thread about flashing Dell with nb0 files
http://www.aximsite.com/boards/showthread.php?t=137015)

HP owners: I advise that you edit latest nbf (not 2.01) but you will later also need 2.01 flasher.

You can open nbf/nb0 file in any hexeditor (I use free XVI32.exe) and find following sequence

for hx4700
FF FF FF FF FF FF FF FF 9B 4F FF FF 64 B0 00 00 64 00 00 00 74 9A 1F 80 00 00 48 00
where last 4 words stand for PagePool as stored by processor. 00 00 48 00 means 480000 (pagepool=4.8M)

hx 2110 (WM 5.0 1.00.03.H RUS) just look for the shorter part of the same sequence, for example
FF FF FF FF FF FF FF FF 9B 4F FF FF 64 B0 00 00
you will find
FF FF FF FF FF FF FF FF 9B 4F FF FF 64 B0 00 00 ?? ?? ?? ?? ?? ?? ?? ?? 00 00 50 00
pagepool=5M

for DellX51v sequence will be
FF FF FF FF FF FF FF FF 9B 4F FF FF 64 B0 00 00 ?? ?? ?? ?? ?? ?? ?? ?? 00 00 80 00
pagepool=8M

Here are some values you may want to set there
00 00 80 00 =8M
00 00 C0 00 =12M
00 00 00 01 =16M
00 00 80 01 =24M
00 00 00 02 =32M
though I doubt anybody needs to go above 8M on 64M device and above 16 on 128M device.

Now, to flash it you need to use different procedures depending on device.

Dell users: please refer to the aximsite tutorial that I referenced above. You might need to calculate new CRC for you nb0 file. I do not own Dell, I just helped to patch nb0 and have not heard whether flashing went successful yet.

IPAQ users: you probably edit the latest nbf, but you will need to use the very first version of flasher (i.e. one converting 2003se to WM5, not the 2nd or N-th upgrade). I do not know why, but my flashing timed out twice at 99% when using latest flasher. Same applies to 2110 users. Multiple attempts of flashing with latest flasher, or even with cracked one, was hanging at 1-2%. Only "2003se to WM5" flasher actually worked.

You need to start upgrade utility in its original form (i.e. with unmodified nbf file) wait till it checks that IPAQ is right and connected to power, etc and checks the nbf file. It gives you the last menu, something like "NOW PRESS TO FLASH". At this moment, you need to exchange nbf file with modified one. Then you can start flashing.

I WARN YOU ABOUT DANGER OF BRICKING YOUR DEVICE DURING FLASHING EXPERIMENTS. I AM IN NO WAY LIABLE IF THAT HAPPENS TO ANYONE. DO NOT ATTEMPT IT IF SOMETHING IS UNCLEAR TO YOU IN THE ABOVEMENTIONED INSTRUCTIONS, OR IF YOU DO NOT HAVE ANY PREVIOUS EXPERINCE WITH FLASHING CUSTOMIZED ROMS

Having sad that - Good Luck!
I'm a HP iPaq hx4700 user and had done the procedures above.
I must say: "Wow, this is speed!" . But I noted something: a increase on the amount of MEMORY used by the system and a considerably increase on the POWER used by the system . Is it normal?

Thank you!
Best regards!
cristianomc is offline  
Closed Thread


Thread Tools


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
HX4700 SD Slot Speed Dumbmut iPAQ hx4700 series 3 05-11-2005 11:56 AM
CF r/w speed of hx4700 waynema iPAQ hx4700 series 3 10-06-2004 04:34 PM
How to change processor speed? snabela86 iPAQ h2200 series 2 08-08-2003 10:56 AM
Change CPU speed imported_Calvin iPAQ h2200 series 0 06-29-2003 10:40 PM
Popping sound from iPaq speaker, is it the same as in the Aero 2xxx series? Boxster S iPAQ h3600-h3900 series 4 10-15-2000 11:46 PM


All times are GMT -5. The time now is 06:05 AM.



Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.

TechTarget provides enterprise IT professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective IT purchase decisions and managing their organizations' IT projects - with its network of technology-specific Web sites, events and magazines.

TechTarget Corporate Web Site  |  About Us  |  Advertising  |  Site Map  |  Contact Us  |  Submit Review  |  RSS Feeds  |  Jobs




All Rights Reserved, Copyright 1999 - 2007, TechTarget | Read our Privacy Policy
  TechTarget - The Most Targeted IT Media