The Design of Software (CLOSED)

A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.

The "Design of Software" discussion group has been merged with the main Joel on Software discussion group.

The archives will remain online indefinitely.

java SIMD performance

I'm pretty happy with the threading performance in my java app. It scales nicely across multiple cores for my particular needs. But I think I'm leaving performance on the table when it comes to the SSE vector units. It seems that for the types of numerical work I do the vector units can give nice speedups.

Does anyone know whether the Sun JVM uses SSE compute on packed vectors? I know it uses some SSE instructions but the info I found suggested it doesn't actually generate SIMD code using them.

(I don't want to rewrite in another langauge, thanks! 8=)
needinspeed Send private email
Wednesday, May 16, 2007
 
 
>Does anyone know whether the Sun JVM uses SSE compute on packed vectors?
It doesn't. Just write that particular part in C++ and then call it via JNI.
Dick
Wednesday, May 16, 2007
 
 
Oh dear :-( I find JNI to be like scrapping ones nuts on a gravel speed trap.

Thanks for the info!
needinspeed Send private email
Wednesday, May 16, 2007
 
 
>Oh dear :-( I find JNI to be like scrapping ones nuts on a gravel speed trap.

Use SWIG. SWIG generates a Java wrapper around a native DLL. It takes care of all the JNI stuff for you.
Dick
Thursday, May 17, 2007
 
 
Oh that looks nice, thanks! Its been a while since I last used swig and it seems to have a hugely expanded range of features.
needinspeed Send private email
Thursday, May 17, 2007
 
 
>Oh dear :-( I find JNI to be like scrapping ones nuts on a gravel speed trap.

To appreciate this simile, I just was outside scraping my nuts on gravel.
OneMist8k
Friday, May 25, 2007
 
 

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
 
Powered by FogBugz