View Single Post
Old 04-07-2011, 03:39 PM   #26
Iņigo
Guru
Iņigo did not drink the Kool Aid.Iņigo did not drink the Kool Aid.Iņigo did not drink the Kool Aid.Iņigo did not drink the Kool Aid.Iņigo did not drink the Kool Aid.Iņigo did not drink the Kool Aid.Iņigo did not drink the Kool Aid.Iņigo did not drink the Kool Aid.Iņigo did not drink the Kool Aid.Iņigo did not drink the Kool Aid.Iņigo did not drink the Kool Aid.
 
Posts: 730
Karma: 72743
Join Date: Feb 2008
Location: Here or there
Device: iRex iLiad, iRex DR800S. K4NT. Kobo Aura, Aura One, Libra 2.
Quote:
Originally Posted by dima_tr View Post
Guys I have not done any performance testing, just asked Marcel to do ones; it will be faster as he has the setup for this. 10% improvements came from the explanation on what Amalgamation is (SQLite page). The reasoning makes sense.

Marcel, can you please add the mentioned flags, compile libsqlite3.so.0 and make the performance test? Pleeease

-march=arm1136jf-s -mtune=arm1136jf-s -O3 -funroll-loops
That "-march" is incorrect there, it should be "-mcpu" i.e.:
Code:
-mcpu=arm1136jf-s -mtune=arm1136jf-s -O3 -funroll-loops
Anyway, I've recompiled last version of FBReader with and without these flags.

My tests:

2 books:
  • Book A: .fb2, 1.6MB, 699 pages (small font size)
  • Book B: .fb2, 430KB, 192 pages (small font size)
3 different tests, one run atfer the previous one
  • (1) open book A from reboot
  • (2) open book A after closing 1
  • (3) open book B after closing 2

Between classic FBReader tests and new FBReader tests I've rebooted the DR800S.

Times (in secs):
Code:
          (1)  (2)  (3)  
Classic:  13    7    11
New:       8    5    9
Of course, my measurements are far from the scientific method, but it looks there are some useful speed improvements.
Also real overall use feels faster, for example, changing pages.


I've attached both FBReader versions (note new one is bigger: 3.5 vs 2.3 MB).
Could you repeat the tests and comment, please?


If we can confirm these speed improvements, I really think we could get significant speed enhancements recompiling some DR apps/libs.

Iņigo

PS: I presume size increment comes from the "-funroll-loops" flags


Off-topic:
- My experiments building a new cross-compiler from gcc v4.5.2 sources failed.
I think I need to create a sysroot... it requires too much time I don't currently have
- I've also tried installing new versions of the prepackaged poky platform [1].
. v4 and v5 are too modern
. v3.2 and v3.3.1 compilers can be used with some minor hacks and links, but qemu doesn't run.
So I've returned to IREX supplied poky version.


[1] http://pokylinux.org/


EDIT: I've recompiled all components of DR800+ and the vala programs... system feels faster. Don't know if it's my own imagination, but feels faster.

EDIT 2: I've changed original sqlite library for a compilation of sqlite amalgamation with these flags. System and Books folder opening looks faster as well.
Attached Files
File Type: gz FBReader.tests.tar.gz (1.96 MB, 559 views)

Last edited by Iņigo; 04-08-2011 at 05:32 PM.
Iņigo is offline   Reply With Quote