<p>I was discussing neural networks (NN) with a friend over lunch the other day and he claimed the the performance of a NN written in Java would be similar to one written in C++.  I know that with 'just in time' compiler techniques Java can do very well, but somehow I just don't buy it.  Does anyone have any experience that would shed light on this issue?  <a href="http://en.wikipedia.org/wiki/Comparison_of_Java_and_C%2B%2B#Performance" rel="nofollow noreferrer">This page</a> is the extent of my reading on the subject.</p>

The Hotspot JIT can now produce code
faster
than C++.  The reason is run-time empirical optimization.
For example, it can see that a certain loop takes the "false" branch 99% of the time and reorder the machine code instructions accordingly.
There's lots of articles about this.  If you want all the details, read
Sun's excellent whitepaper
.  For more informal info,
try this one
.