University of Maryland Mike P. Cummings  
Center for Bioinformatics and Computational Biology
HomeResearchPublicationsPersonnel

The Lattice Project
About Lattice
Applications
Client Activity
Create Account
Message Boards
Participant Profiles
Questions & Answers
Research Projects
Rules and Policies
Statistics
Teams
Top Computers
Top Participants
Top Teams
Your Account

BOINC Logo



About Lattice

An Introduction to The Lattice Project

The Lattice Project is the research in grid computing conducted by the Laboratory of Molecular Evolution. It can also refer to the grid computing system that is currently in production at the University of Maryland. Michael Cummings has directed The Lattice Project from its inception in late 2003 to the present, and Adam Bazinet has been the primary developer. During this time the system has been continually developed, improved, and used to complete many scientific analyses. We were initially motivated by the need for more computing power for our own research, but our development of the grid system has always been with general, non-domain-specific use in mind. In fact, the majority of our users have been other researchers from throughout the world as well colleagues at local institutions.

For background material, perhaps the Wikipedia entry on grid computing is a neutral place to start. There are many different takes on the concept, but here is a simply stated definition of grid computing: applying the resources of many computers to a single problem at the same time. To broaden out this definition a little, one generally assumes that the computers in question are not centrally administered, and may not even be known to the end user of grid computing.

There are several publications about The Lattice Project. Some of the technical details may have changed since a particular manuscript was published, but most of the core ideas have remained the same. Slides from presentations about The Lattice Project are also available.

A Quick Blurb About Grid Computing Resources

One may ask: why would I use a grid computing system? To answer this question, we define a local resource as an established computing resource administered in one domain and capable of functioning independently from a grid system. Users of a local resource often submit and monitor compute jobs using some kind of job scheduling software. Pools of computers running Condor software or dedicated clusters running a variant of PBS are typical examples of such local resources. A basic function of The Lattice Project is to perform meta-scheduling, which is the process of assigning computational jobs to an eligible local resource. This functionality is what makes grid computing appealing: it is the ability to use many different resources simultaneously and efficiently, wherein the grid system handles user authentication and authorization, job scheduling and monitoring, and data placement. The Lattice Project provides these features and many more, thus enabling the student, scientist, or researcher to perform a large amount of computation in a short amount of time without having to set up their own computing environment. Typically, the user of grid computing gains access to resources outside of his or her administrative domain. In our grid system, one of these resources is especially unique: The Lattice BOINC Project.

The Lattice BOINC Project

We have just described how our use of BOINC fits into the comprehensive grid system we have designed. However, we see BOINC (and by extension, the BOINC community) as our single most important resource--and potentially, our largest one. Thus, we would like to provide our users with an understanding of how The Lattice BOINC Project may differ from other BOINC projects they may participate in.

The main thing to realize is that because The Lattice BOINC Project receives jobs from a general-purpose grid system, we may end up running a variety of different programs for a number of different projects. We provide a description of the applications we run and the various projects they are associated with. Our research page attempts to describe the relevant science without using too much jargon, as that can be off-putting to many potential contributors. However, for those who want a more detailed and technical treatment of the work, you may follow links to the associated academic papers, software, web sites, and so on.

It is also helpful to understand the applications we run. Typically, these are so-called "legacy applications", which means they were not originally written with BOINC in mind. If you look at our list of grid services (a term we use to mean a grid-enabled application), you will see that most of them have been "ported to BOINC" at some time in the past. In the majority of cases, this was achieved with a library of our own that predates the newer wrapper method. However, we recognize the advantages of a native BOINC application, the biggest of which is checkpointing. Thus, if we are going to run an application a great deal, we will consider modifying the source code of that application to produce a native BOINC executable when it is possible to do so.

The Lattice site hosts frequently asked questions about The Lattice Project and BOINC. Thank you for your participation and support!

.......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ..........

University of Maryland     UM Home | Directories | Search | Admissions | Calendar
Copyright © 2014 The Lattice Project
Maintained by Adam Bazinet
Direct questions and comments to Michael Cummings