I am attempting to get Java to run on my Lubbock board (with a
PXA255) at a reasonable speed. The board is running a Linux system
consisting of a 2.4.19-rmk7-pxa1 kernel using FastFPE, busybox 1.00-
pre1 and KDrive built from XFree86 4.3 sources. Benchmark scores for
the board seem to be OK (I've included some results from the AIM
Independent Resource Benchmark as well as the startup logs from the
kernel), and overall system performance appears to be fine. However,
Java performance, especially Swing, is horrible. When running a Swing
application (the Stylepad demo included with the Sun JDK, for
example), there is a 2 to 3 second delay between clicking on a menu
and having the menu display. Similar lag and sluggishness occurs
throughout the interface.
I am currently using the Blackdown ARM port of Java 1.3.1. I am
aware that there was an initial release of an XScale Blackdown port
a few months back, but I have been unable to run this -- I receive a
"R_ARM_PC24 relocation out of range" error when Java attempts to load
libawt.so. Does anyone have any experience running Java on the PXA255
or another XScale processor? Are these results normal/expected? Any
suggestions to improve performance, or to get the XScale Blackdown
port to work correctly?
Shaun
-----------------------------------------------------------
AIM Independent Resource Benchmark Results
Test Result (1000s of operations/sec)
-------------- ------------
short add 118811
int add 475247
long add 475247
float add 2758
double add 2756
short div 4727
int div 3508
long div 3508
float div 469
double div 469
short mul 121020
int mul 180768
long mul 180768
float mul 2536
double mul 3328
Test Result (operations/sec)
-------------- ------------
fun call 0 17066666
fun call 1 16384000
fun call 2 15538008
fun call 15 8991219
setjmp/lngjump 1854000
mem rtns 1 147783
mem rtns 2 65600
3d projection 20700
linear system 1
integer sieve 1
-----------------------------------------------------------
Linux version 2.4.19-rmk7-pxa1 ([EMAIL PROTECTED]) (gcc version 3.3.2) #84 Wed
Feb 4 13:45:35 PST 2004
CPU: XScale-PXA255 revision 6
Machine: Intel DBPXA250 Development Platform
Ignoring unrecognised tag 0x00000000
Memory clock: 99.53MHz (*27)
Run Mode clock: 398.13MHz (*4)
Turbo Mode clock: 398.13MHz (*1.0, inactive)
On node 0 totalpages: 16384
zone(0): 16384 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: root=/dev/nfs rw nfsroot=/opt/armroot/rootfs
ip=10.10.10.10:10.10.10.9:10.10.10.1:255.255.255.0:localhost console=tty0
mem=64M
Relocating machine vectors to 0xffff0000
Console: colour dummy device 80x30
Calibrating delay loop... 397.31 BogoMIPS
Memory: 64MB = 64MB total
Memory: 62984KB available (1418K code, 311K data, 80K init)
Dentry cache hash table entries: 8192 (order: 4, 65536 bytes)
Inode cache hash table entries: 4096 (order: 3, 32768 bytes)
Mount-cache hash table entries: 1024 (order: 1, 8192 bytes)
Buffer-cache hash table entries: 4096 (order: 2, 16384 bytes)
Page-cache hash table entries: 16384 (order: 4, 65536 bytes)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
SA1111 Microprocessor Companion Chip: silicon revision 1, metal revision 1
PXA USB Controller Core Initialized
Using PXA255 frequency points.
Registering CPU frequency change support.
CPU clock: 398.131 MHz (99.000-400.000 MHz)
Starting kswapd
JFFS2 version 2.1. (C) 2001 Red Hat, Inc., designed by Axis Communications
AB.
Console: switching to colour frame buffer device 80x30
Detected PS/2 Mouse Port.
pty: 256 Unix98 ptys configured
Serial driver version 5.05c (2001-07-08) with no serial options enabled
ttyS00 at 0x0000 (irq = 15) is a PXA UART
ttyS01 at 0x0000 (irq = 14) is a PXA UART
ttyS02 at 0x0000 (irq = 13) is a PXA UART
SA1100 Real Time Clock driver v1.00
Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx
ac97_codec: AC97 Audio codec, id: 0x5053:0x4304 (Philips UCB1400)
smc91x.c: v1.0, mar 07 2003 by Nicolas Pitre <[EMAIL PROTECTED]>
eth0: SMC91C94 (rev 9) at 0xf1000c00 IRQ 162 [nowait]
eth0: Ethernet addr: 00:02:b3:00:90:86
In file pxa-ac97.c, pm_registered.
Probing Lubbock flash at physical address 0x00000000 (32-bit buswidth)
Lubbock flash: Found an alias at 0x2000000 for the chip at 0x0
0: offset=0x0,size=0x40000,blocks=128
Using buffer write method
Using static partition definition
Creating 3 MTD partitions on "Lubbock flash":
0x00000000-0x00040000 : "Bootloader"
0x00040000-0x00140000 : "Kernel"
0x00140000-0x02000000 : "Filesystem"
Linux Kernel Card Services 3.1.22
options: [pm]
Intel PXA250/210 PCMCIA (CS release 3.1.22)
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 4096 bind 8192)
IP-Config: Complete:
device=eth0, addr=10.10.10.10, mask=255.255.255.0, gw=10.10.10.1,
host=localhost, domain=, nis-domain=(none),
bootserver=10.10.10.9, rootserver=10.10.10.9, rootpath=
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
Fast Floating Point Emulator V0.9 (c) Peter Teichmann.
Looking up port of RPC 100003/2 on 10.10.10.9
Looking up port of RPC 100005/1 on 10.10.10.9
VFS: Mounted root (nfs filesystem).
Freeing init memory: 80K
----------------------------------------------------------------------
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]