IBM®
Skip to main content
    United States change      Terms of use
 
 
Select a scope:    
     Home      Products      Services & industry solutions      Support & downloads      My account     
alphaWorks  >  Grid computing  >  

OptimalGrid

A research prototype of grid-enabled middleware designed to hide complexities of partitioning, distributing, and load balancing.


Date Posted: April 16, 2003
Overview Requirements DownloadFAQsForum Reviews



1. How do I distribute the individual pieces of the OptimalGrid code to the various computing agents?

In this first release of the OptimalGrid middleware, we are not yet using our own distribution mechanism for files. Therefore, users can choose their own method for distributing program pieces and utilities to the various computing agent machines. One promising mechanism for distributing files is the C3 cluster management tool. C3 represents a convenient way to distribute the OptimalGrid.jar file to the various computing agent machines as well as to run the ComputeAgent code to run the problem. Many other methods are possible. In a forthcoming release of OptimalGrid, planned for this fall, OptimalGrid will support Open Grid Services Interface (OGSI) using Globus Toolkit 3.0. We will also include in the OptimalGrid package a Research Nugget technology based on OSGI in order to make it easy for grid developers to distribute, update, and manage JAR files, config files, and other resources required by any distributed grid application.
Back to top Back to top

2. Does this technology work with all versions of Linux?

So far, we've run it on different versions of Linux RedHat 7.x and 8.x, using both Java 1.3 and 1.4. We've noticed a problem with Linux RedHat 9, using P-Threads. The whiteboard does not operate properly with P-Threads (things run very slowly, for reasons we don't quite understand). For now, it is best to avoid RedHat Linux, Version 9 (using P-Threads).
Back to top Back to top

3. Am I restricted to only physical problems such as a 2-dimensional petri dish?

No, of course not. OptimalGrid works with any connected problem, any dimensionality, and any problem space (physical or abstract). In fact, it works fine for non-connected problems, but then you wouldn't be using the measurement, monitoring, and rebalancing characteristics of OptimalGrid. An added note about the connectivity: As the connectivity of the problem increases, communication cost will, of course, increase.
Back to top Back to top

4. I see you're using TSpaces. Is this the same TSpaces (Version 2.1.2) that is the current version available here at alphaWorks?

No. This is a more recent release of TSpaces that is meant to be used only for OptimalGrid. It is not compatible with the currently released version of TSpaces (2.1.2). We will be making a more general release of TSpaces using this "Version 3" code at some later date.
Back to top Back to top

5. Isn't this just another grid tool like Globus?

In simple terms, no. OptimalGrid is not a toolkit. It takes a very different approach compared to existing grid tools. In the classic distributed programming case (such as with Globus), the user creates his program and then uses the Globus API to help distribute it. In OptimalGrid, the user supplies a "program plug-in" -- just the code that represents the user's basic problem algorithm -- and OptimalGrid manages everything else: the problem partitioning, the problem piece deployment, the run-time management, the dynamic level of parallelism, the dynamic load balancing, and even the system fault tolerance and recovery. OptimalGrid provides a level of "carefree" programming that was heretofore unobtainable. It is possible, with OptimalGrid, to simply define a connected problem and have it run over thousands of machines. Such a venture, using "hand-coded" methods, would require not just a distributed programming expert, but a very lucky one, merely to get the entire system to run.
Back to top Back to top

6. What ports/protocols does OptimalGrid use?

All communication is done over TCP. The default port used is 8200/tcp. This is used for communication between the Compute Agents and Whiteboards.
Back to top Back to top

7. Can I change the ports used?

Yes. This change is handled in the configuration file grid.cfg.
Back to top Back to top

8. Can I use OptimalGrid through firewalls?

The short answer is no. The first release of OptimalGrid is meant to be used in an intra-net setting, meaning that we have no specific firewall support and we make no guarantees about its working on the "wild and woolly" Internet. That said, we have run applications in the past that run inside a firewall and talk to a whiteboard (a TSpaces server) that is outside the firewall. When the conversation is initiated from inside the firewall, the connection (and session) is allowed. So, while it is certainly possible to get this running so that parts of the system are inside a firewall and other parts are outside, we make no guarantees or promises that you can get it to work in anything but an intranet setting. In fact, if any users do successfully deploy a multi-part OptimalGrid system, with some parts inside a firewall and other parts outside, we'll be happy to post your design and implementation steps on our Web site for others to see and admire.
Back to top Back to top
Download now Download now

Related technologies

For platform(s):
Windows NT, Linux, Windows 2000, Windows, Java

For topics:
Autonomic computing, games, Life sciences, load balancing, optimization, partitioning, performance, Grid computing, Middleware


Related resources

IBM Grid computing

The Globus Project

Global Grid Forum

Press Articles

 

    About IBM Privacy Contact