GRIDtoday editor Derrick Harris recently spoke with Walfredo Cirne, director of the Distributed Systems Lab at the Universidade Federal de Campina Grande in Brazil, about OurGrid — a project he leads (and to which HP has contributed a fair amount of resources) that has become one of the largest computational Grids in Brazil. Cirne will be presenting at the next Gelato Federation meeting, which will take place Oct. 2-5 in Porto Alegre, Brazil.
GRIDtoday: Tell me about OurGrid. Can you give me a brief background on the project and what it hopes to accomplish?
WALFREDO CIRNE: OurGrid is an open, free-to-join Grid. Unlike traditional Grids, joining OurGrid is automatic. No paperwork or approvals of any sort are required. Someone wanting to join OurGrid just downloads the software from www.ourgrid.org and installs it. OurGrid forms a peer-to-peer Grid in which peers donate their idle computational resources in exchange for accessing other peers' idle resources when needed. The vision is that OurGrid provides a massive worldwide compute platform on which research labs can trade their spare compute power for the benefit of all.
I often think about OurGrid as a digital inclusion project. It caters to the small research labs spread throughout the world. These labs increasingly demand more and more computational power, just as large research labs and high-visibility projects. However, they seldom have the resources to afford traditional HPC solutions and the specialized computer personnel to use it.
Gt: OurGrid is focused on running “Bag-of-Tasks” applications. How do these applications vary from other types of applications that might run on a Grid?
CIRNE: We use the term Bag-of-Tasks to refer to parallel applications whose tasks are independent. OurGrid began as a solution to a particular problem: the execution of hundreds of thousands simulations. The simulations were independent and then extracting parallelism from them was very straightforward. Such independence also simplifies running the application on the Grid because it greatly reduces coordination problems. This initial solution was very minimalist and only supported a single user. But it worked so well, it was so much simpler than traditional Grids, and Bag-of-Tasks applications are useful in so many contexts, that we decided to keep the focus on this kind of application as the system evolved in a worldwide compute platform.
In fact, we are at a point in the project that we just finished up the support for worldwide resource sharing among unknown entities to run Bag-of-Tasks applications. We now are evolving OurGrid to support communicating parallel applications. This will be available in OurGrid 4.0, which should be released in November. The challenge is to add this support for communicating applications while keeping OurGrid simple and safe.
Gt: Can you speak a little about the importance of being “fast, simple, scalable and secure”?
CIRNE: These are the main requirements for OurGrid to succeed. Clearly, OurGrid must be fast, (i.e., using the Grid must produce results much faster than not using it). It must also be simple because our target public is the small research lab. These people just don't have the time and resources for arcane computer solutions. The closest to “plug-and-play,” the better. OurGrid must be scalable because the small research labs that need substantial compute power number in thousands. Note also that scalability is not just a technical issue, it also has administrative ramifications. Finally, OurGrid must be secure, because otherwise no one is going to use it.
Gt: What are some of the unique projects running on OurGrid?
CIRNE: There are a number of projects using OurGrid, from molecular dynamics and simulations and climate forecast to drug discovery and hydrological management and image processing. For instance, we make intensive use of OurGrid to run simulations that help us refine and extend OurGrid itself.
A particularly interesting project based on OurGrid is SegHidro, a project that aims to improve the decision-making process for the water reservoirs of the Brazilian Northeast. The Brazilian Northeast (which is the region where I live) has very irregular rainfall. We have severe droughts, but also floods. As such, a good management of our water reservoirs is critical to minimize the effects of droughts, as well as to prevent floods. SegHidro combines a number of climate and water forecast models together with reservoirs models to provide decision makers with the risk analysis of their decisions. In fact, different research labs of the region contributed with different pieces of the whole model. It is very nice to see our efforts helping to improve people's lives, especially those of the poor people who suffer the most from our droughts and floods.
Gt: I understand that OurGrid was developed in collaboration with Hewlett-Packard. How was it working with them and what role did they play in the development?
CIRNE: HP has been key to OurGrid's existence. They have helped the project in many ways. HP has funded most of the research behind OurGrid, and also a considerable part of its development. They have closely followed the project evolution, providing important feedback and helping us establish priorities. Furthermore, they've been directly involved in research that made OurGrid possible. The Network of Favors (the peer-to-peer resource sharing protocol that is OurGrid's heart) was jointly developed by us, at UFCG, and HP Labs in Bristol (United Kingdom). SWAN (OurGrid's security mechanism) was conceived and implemented by HP Brazil R&D Labs, in Porto Alegre.
Gt: Right now, OurGrid consists of more than 500 machines. How many machines would you like to see make up the OurGrid network?
CIRNE: We have a rough estimate that there are about 10,000 research labs around the world that could benefit from OurGrid. Looking at the labs that have already joined the community, each averages 15 computers per lab. Therefore, our target is to reach 150,000 machines.
Gt: Although Grids are hardware and operating system agnostic, your institution is also a member of the Gelato Federation, which promotes Linux on Itanium. Why is it important for you?
CIRNE: Being a Gelato member reinforces our networking abilities, opening up opportunities for collaboration. Moreover, Gelato is such a great source for technical information.
Gt: What makes Linux on Itanium such an effective platform for High Performance Computing?
CIRNE: Historically, better performance has been obtained from increasing processor clock speed. However, turning up clock speed is starting to reach limits of physics and manufacturability. In fact, clock speed increase has already slowed down. Better performance will no longer be driven by having more CPU cycles per unit time, but by performing more instructions per clock cycle. And that is where Itanium comes in. Being clever about how to achieve more per clock cycle is what Itanium is all about.
As for why Linux on Itanium, I think it is just the natural choice. The whole HPC industry has long been UNIX-like based. In recent years, Beowulf clusters have made it strongly Linux based. It's now time we start to see more and more of these clusters being built around Itanium. By combining open-source Linux with multi-vendor Itanium system offerings, one can expect to have a very cost-effective solution.
Gt: How do you see Gelato members in Latin America, in particular, contributing to science and technology development in the region?
CIRNE: The whole Itanium technology is pretty cutting-edge (some may even say ahead of its time). Thus, it is very important for us, research labs in Latin America, to get involved in the process of refining it.
Gt: What is your personal history with Grid computing and HPC in general?
CIRNE: I became involved with Grids and HPC in 1997, during my Ph.D. My advisor, Fran Berman from the University of California, San Diego (UCSD), was one of the people who “created the area” in the mid-1990s. Naturally, I worked with Grids during my thesis.
In fact, OurGrid is somewhat of a byproduct of my Ph.D. thesis. As I mentioned, OurGrid stemmed from the need to run tons of simulations. This is because, during my thesis, I got unlucky with some workload distributions, which were very “elastic.” As a result, I ended up having to run my simulator hundreds of thousands times to get statistically valid results. The simulations were independent, making them a suitable application to the Grid. Thus, I went to try to run my simulations on the Grid. However, even in a top Grid lab, it was very hard to get a Grid running in production in the late 1990s. All we had were testbeds. So, I leveraged the simplicity of task independence, and created MyGrid, a series of scripts that allowed me to combine all machines I could login via ssh into a “personal Grid.” With the help of some friends (promising I would always run “niced”), I got access to six labs; 178 processors total. This was enough for me to run my simulations 116 times faster than using only my desktop computer.
I later realized that MyGrid would be useful to many people. So, with the help of HP and the energy of many students, we've built a product version of MyGrid, with a manual and everything. It allows people to combine all the machines they have access to into a personal Grid able to run Bag-of-Tasks applications.
OurGrid followed, enabling people to automatically and safely exchange resources from their MyGrids. The idea is that they'll be able to run even on computers they don't have access to, making their “personal Grid” scale much further than the remote logins they can manage to talk their friends into providing to them.
Gt: What are some of the big changes you have seen with Grid computing since you got involved, and what do you think will be the biggest changes we will see in the near future?
CIRNE: Grids started as one form of HPC. The idea was to combine resources from multiple administrative domains to obtain unprecedented levels of parallelism. For me, the biggest change was the evolution of this vision into the ability to access and combine computational services on demand. This takes Grids from a niche (HPC) and puts them into the computing mainstream. It is a vision that makes a lot of sense (both technically and economically). However, I'm afraid we are building a far too complex infrastructure. Last time I checked, there were 52 “emerging” Grid standards. It is just too complex. I expect to see much simplification before we can realize the vision of service-oriented Grids.
Gt: Is there anything else you'd like to add?
CIRNE: If you have a Bag-of-Tasks application, go to www.ourgrid.org, and give OurGrid a try. The system is for real, and we'd love to have you in the community.