Skip to main content

Java 8 on the Raspberry PI - floating point performance issues

2 replies [Last post]
dmsdms
Offline
Joined: 2012-12-23
Points: 0

I have a Raspberry PI running Raspbian with the Hard floating point.
I have downloaded Java 8 (1.0.8-ea-b36e) and installed it.
So far everything I have run has worked fine (any JNI libraries need
rebuilding).
I have run some floating point performance tests and these have been
very disappointing. The Java 8 is no faster than Java 7 with soft fp.
Question - is this version of Java 8 using the hard floating point?
Regards
Don

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
vladidan
Offline
Joined: 2013-02-26
Points: 0

To your question: yes, Java 8 utilizes VFP and HF ABI

Could you please provide more info e.g.
- do you refer to Java 7 soft fp as Softfloat or rather as SoftFloat ABI with VFP? In the former case significant FP operations performance improvement in ARM HF ABI performance is expected. In the later case performance improvement is possible (depends on a benchmark) though it won't be that overwhelming.
- what target has been used for Java 7 comparison?

dmsdms
Offline
Joined: 2012-12-23
Points: 0

Hi,

The test is a Deconvolution simulation that performs a
lot of heavy floating point work.

I first ran the test on a RP running
Linux rp16-0 3.1.9+ #272 PREEMPT Tue Aug 7 22:51:44 BST 2012 armv6l GNU/Linux
with
java full version "1.7.0_04-ea-b20"
The test took 38.9 seconds

I then ran the test on a RP running
Linux raspberrypi 3.2.27+ #250 PREEMPT Thu Oct 18 19:03:02 BST 2012 armv6l GNU/Linux
with
java full version "1.8.0-ea-b36e"
The test took 38.7 seconds

I also ran some 'C' tests on the raspbian system
1000 x 1048576 multiply & adds
'C' 57.08 secs
Asm 49.33 secs
Java 840 secs

Regards
Don