Welcome to the MacNN Forums.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

You are here: MacNN Forums > Software - Troubleshooting and Discussion > Developer Center > Java Parallel Processing on Xserve

Java Parallel Processing on Xserve
Thread Tools
DaGuy
Senior User
Join Date: Oct 2000
Location: Lawrence, KS
Status: Offline
Reply With Quote
Mar 4, 2004, 09:19 PM
 
Do any of you know of any benchmarks for running Java on an Xserve cluster? I'm hoping for the ability to run multiple JVMs that know about each other and do some kind of distributed threading -I know that the Mach kernel can handle this but the JVMs are a different creature.

Does any of that exist? If so, I can probably get the folks at work to at least look at Xserves for our computing needs.
iMac 17" G4 800MHZ & 768 SDRAM
     
Arkham_c
Mac Elite
Join Date: Dec 2001
Location: Atlanta, GA, USA
Status: Offline
Reply With Quote
Mar 4, 2004, 11:56 PM
 
Originally posted by DaGuy:
Do any of you know of any benchmarks for running Java on an Xserve cluster? I'm hoping for the ability to run multiple JVMs that know about each other and do some kind of distributed threading -I know that the Mach kernel can handle this but the JVMs are a different creature.

Does any of that exist? If so, I can probably get the folks at work to at least look at Xserves for our computing needs.
If your app is threaded, you only need one JVM. Java scales really well up to 8 or so processors (according to our Sun rep). Since threading is so easy in java (with the synchronized keyword and thread safe classes), this is the route to take.

As far as synchronized JVMs, the closest thing I've ever heard of is J2EE, which allows entity beans in clustered containers to talk and share state. Without knowing your specific purpose though, I can't really recommend that route.
Mac Pro 2x 2.66 GHz Dual core, Apple TV 160GB, two Windows XP PCs
     
absmiths
Mac Elite
Join Date: Sep 2000
Location: Edmond, OK USA
Status: Offline
Reply With Quote
Mar 5, 2004, 02:12 AM
 
Multiprocessing in Java is automatic - just use threads (properly) and you are there. If you need clusters to run across several machines then I suggest either (1) write your own distribution mechanism, or use something like RMI to hide the network details. Ultimately (1) will yield the best performance, at the cost of requiring better engineering up front.

BTW, this isn't an OS X issue - Java MP works the same as on other platforms.
     
DaGuy  (op)
Senior User
Join Date: Oct 2000
Location: Lawrence, KS
Status: Offline
Reply With Quote
Mar 5, 2004, 02:30 AM
 
Thanks for the helpful posts! This is positive news. Some folks at work run very large scale numerical simulations and are thinking of upgrading some existing wintel hardware -I'm all for that!!

The other really cool thing would be leveraging the G5's 64 bit plumbing but from what I hear Apple's JVM is 32 bit -like all or most of the market.

Anyway, I don't have much of a case without bench marks. There's evidence that Xserves really smoke for biotech (i.e., BLAST) simulations but as far as I can tell those are not Java apps.
iMac 17" G4 800MHZ & 768 SDRAM
     
Richard Edgar
Dedicated MacNNer
Join Date: Sep 2002
Status: Offline
Reply With Quote
Mar 5, 2004, 08:04 AM
 
Some folks at work run very large scale numerical simulations
In Java?
     
absmiths
Mac Elite
Join Date: Sep 2000
Location: Edmond, OK USA
Status: Offline
Reply With Quote
Mar 5, 2004, 12:17 PM
 
Originally posted by Richard Edgar:
In Java?
Of course in Java. Check this out: http://math.nist.gov/javanumerics/

There is another page I can't find right now where a team of developers compared C++/C/FORTRAN/Java to one another and found Java worth the trade-off. How easy is it to write a distributed computer in Java that can run on Linux/Windows ANY/Mac OS X/FreeBSD/IRIX/Solaris? Compare that with doing the same thing in C. The FORTRAN code would fare somewhat better (potentially), but the Java code is at least an order of magnitude easier to write.
     
Richard Edgar
Dedicated MacNNer
Join Date: Sep 2002
Status: Offline
Reply With Quote
Mar 5, 2004, 12:36 PM
 
Curious how the benchmarks always seem to compare Java-to-Java.....

As for portability.... I have run into the odd problem porting programs between Solaris/Irix/Linux. Well, the problems were on Linux, and the compilers being a bit behind on their standards support.
     
DaGuy  (op)
Senior User
Join Date: Oct 2000
Location: Lawrence, KS
Status: Offline
Reply With Quote
Mar 5, 2004, 10:35 PM
 
Originally posted by Richard Edgar:
In Java?
Sure why not. We are not talking real-time were seconds are critical. C or C++ would have taken a long time and Java takes a long time plus some. Anyway, you slice it's still a long time and other issues become more important i.e., integration, code clarity, skill sets and the subject of this post -leveraging MPs.
iMac 17" G4 800MHZ & 768 SDRAM
     
   
 
Forum Links
Forum Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Top
Privacy Policy
All times are GMT -4. The time now is 05:59 AM.
All contents of these forums © 1995-2017 MacNN. All rights reserved.
Branding + Design: www.gesamtbild.com
vBulletin v.3.8.8 © 2000-2017, Jelsoft Enterprises Ltd.,