interesting - yes the only downside I have noted with 64bit "all the
way" is *sometimes* a tad more memory is used for the same thing
(generally due to pointers being twice the size) but its not huge (20%
more memory for small programs, less noticably in the large). Java 6
JVMs (Sun and Apple) both have options in hotspot for helping reduce
this for apps that have a heap <32Gig (above that, you won't notice
anyway I guess).
On Wed, Oct 7, 2009 at 6:50 PM, James Owen <jco2009(a)att.net> wrote:
Greetings:
I've been running some benchmarks on some other systems recently using the
WaltzDB-200 benchmark. (I have to write the data / rules generator for each
vendor and Drools will probably be next after Jess and CLIPS. I've already
done OPSJ and TECH.) Using Java 6 / 64-bit system over the Java 5 system
dramatically improves performance for the two that I have tried so far and
there is no reason to believe that it wouldn't dramatically improve Drools
as well. The other thing that really improves performance is moving to a
64-bit systems. Most desktop units (and laptops) are 32-bit OS, not 64-bit.
The final nail in the coffin was running DDR3 memory rather than DDR2
memory. All together I got 10 times the performance or better. When you
put all of this together, you have a smoking machine.
So, my vote is for Java 6, 64-bit OS and DDR 3 for any machine: Server,
Desktop, laptop, notebook, whatever...
SDG
James Owen
Founder October Rules Fest
Senior Consultant / Architect KBSC
http://www.kbsc.com
http://www.OctoberRulesFest.org
Twitter: OctRulesFest
Blogs:
http://JavaRules.blogspot.com [Rulebased Systems Blog]
http://ORF2009.blogspot.com [October Rules Fest Blog]
http://exscg.blogspot.com/ [Expert Systems Consulting Group Blog]
"If I have seen a little further it is by standing on the shoulders of
giants."
Sir Isaac Newton in a letter to Robert Hooke, 5 Feb 1676
Come to October Rules Fest and stand on the shoulders of the Giants of the
industry; if only for a week.
On Oct 7, 2009, at 2:38 AM, Michael Neale wrote:
yeah its a pain - even if we have to target 1.5 (which is entirely
reasonable for the next few releases) we can probably *require* that
it is built with JDK6, using whatever dirty tricks there are to make
the bytecode work with 1.5.
Apparently the EOL is for the Sun JVM, the IBM and other ones have a
longer life, it seems (and in many cases, the EOL of support on the
core JVM is ignored by users, more so then the app servers or
libraries or applications they run on top ! I have no idea why it is
that way, it just is. Probably like how some places still have Windows
2000 or NT around !).
On Wed, Oct 7, 2009 at 4:44 AM, Geoffrey De Smet
<ge0ffrey.spam(a)gmail.com> wrote:
To compile trunk with Java 6, for now you have to use "-source 1.5".
That doesn't work, as the maven compiler plugin is already set to use
source 1.5 in the main pom and I can't compile with jdk 6. It can only
be compiled with jdk 5 it seems, not jdk 6.
With kind regards,
Geoffrey De Smet
Edson Tirelli schreef:
Geoffrey,
Java 6 API change was not source backward compatible with Java 5.
Drools 5.1m1 is supposed to compile only with Java 5.
We will probably move to Java 6 for the next milestone, since Java 5
is EOL this month anyway, but you need to rollback your change meanwhile.
To compile trunk with Java 6, for now you have to use "-source 1.5".
Edson
2009/10/6 Geoffrey De Smet <ge0ffrey.spam(a)gmail.com
<mailto:ge0ffrey.spam@gmail.com>>
I've fixed it on trunk with this commit:
"compilation error on jdk 6 (not on jdk 5) because the ExectutorService
interface in java 6 follows the Joshua Bloch PECS pattern (so
Collection<? extends Callable...> instead of just
Collection<Callable...>)"
See
http://fisheye.jboss.org/browse/JBossRules/trunk/drools-core/src/main/jav...
<
http://fisheye.jboss.org/browse/JBossRules/trunk/drools-core/src/main/jav...
With kind regards,
Geoffrey De Smet
Geoffrey De Smet schreef:
> When I try "mvn clean install -DskipTests", I get this (java version
> "1.6.0_16"):
>
> [INFO]
>
------------------------------------------------------------------------
> [ERROR] BUILD FAILURE
> [INFO]
>
------------------------------------------------------------------------
> [INFO] Compilation failure
>
/home/ge0ffrey/projects/jboss/drools/drools-core/src/main/java/org/drools/concurrent/ExternalExecutorService.java:[31,7]
> org.drools.concurrent.ExternalExecutorService is not abstract and
does
> not override abstract method <T>invokeAny(java.util.Collection<?
extends
>
java.util.concurrent.Callable<T>>,long,java.util.concurrent.TimeUnit) in
> java.util.concurrent.ExecutorService
>
>
>
>
/home/ge0ffrey/projects/jboss/drools/drools-core/src/main/java/org/drools/concurrent/ExternalExecutorService.java:[31,7]
> org.drools.concurrent.ExternalExecutorService is not abstract and
does
> not override abstract method <T>invokeAny(java.util.Collection<?
extends
>
java.util.concurrent.Callable<T>>,long,java.util.concurrent.TimeUnit) in
> java.util.concurrent.ExecutorService
>
>
_______________________________________________
rules-dev mailing list
rules-dev(a)lists.jboss.org <mailto:rules-dev@lists.jboss.org>
https://lists.jboss.org/mailman/listinfo/rules-dev
--
Edson Tirelli
JBoss Drools Core Development
JBoss by Red Hat @
www.jboss.com <
http://www.jboss.com>
------------------------------------------------------------------------
_______________________________________________
rules-dev mailing list
rules-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
_______________________________________________
rules-dev mailing list
rules-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
--
Michael D Neale
home:
www.michaelneale.net
blog:
michaelneale.blogspot.com
_______________________________________________
rules-dev mailing list
rules-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
_______________________________________________
rules-dev mailing list
rules-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev