The term supercomputer typically refers to dedicated special-purpose multiprocessor computing system that
provides close to best achievable performance for demanding parallel workloads. Supercomputers have several
characteristics that enable them to efficiently execute considerable computational loads.
- High-end and highly reliably hardware components, such as processing units, primary and secondary memory, and
interconnects;
- Supercomputer middleware provides a straightforward abstraction of a homogeneous computational and networking
environment, automatically allocating resources according to the underlying networking topology;
- The resources of a supercomputer are managed exclusively by a single centralized system, which enforces global
resource utilization policies, thus maximizing hardware utilization while minimizing the turnaround time of
individual applications.
These characteristics endow supercomputers with unprecedented performance, stability, and dependability properties.
Grid computing systems could be viewed as large-scale computing systems with considerable levels of
hardware resources but with a lack of the features that make supercomputers so powerful. In particular, grids
usually lack sophisticated support for highly parallel applications with significant inter-process communication
requirements. Grid computing environments are based on heterogeneous, widely dispersed and time-variant resources
which typically lack central control. Connected via local and wide area networks, grids typically rely on an
opportunistic marshaling of resources into coordinated action to meet the needs of large-scale computing applications.
Grids are often offered as panacea for all kinds of computing applications, including those that require
supercomputing-like computing environments. However, this vision of grids as virtual supercomputers is unattainable
without overcoming the performance and reliability issues plaguing current grids. The main challenge of the QosCosGrid
project is to overcome the current limitations of grids and implement a virtual
computer which could be considered a viable approximation of a real supercomputer!
The following problems and complex system models taken from different scientidic domains have been parallized
and created as large scale simulations using QosCosGrid technologies:
Use case 1 - Stellar Dynamics and Evolution
We perform high precision simulations of self-gravitating N-body systems, including both the dynamics of all interacting stars, the evolution of the individual stars and the detailed simulation of stellar collisions. Currently, these simulations can be combined, but doing so leads to excessive resource consumption as each simulation occupies computational resources even when it is inactive. Our challenge is to create a more dynamic multi-physics environment, where different active simulations are launched on different clusters, instead of maintaining a running copy of both active and inactive simulations on a single cluster.
Use case 2 - Molecular Dynamics
Molecular dynamics (MD) is a cornerstone technique of bio-molecular simulations. Because of the large computational demands of all-atom simulations great efforts have been made to employ parallelism to speed up the calculations. Replica exchange (RE) is a simple parallel algorithm that enhances the sampling of complex systems. Because of the low communication overhead the technique is ideally well suited for deployment in a grid environment. Use case 2 consists of an RE implementation into the Adun MD engine. The Adun program is being developed by the Computational Biophysics and Biochemistry Laboratory (CBBL) at UPF, and because of its object oriented nature it facilitates coding of new MD protocols.
Use case 3 - Computational Cell Biology
One of the most important aspects of Computational Cell Biology is the understanding of the complicated dynamical processes that take place on plasma membranes. These processes are so complicated that purely temporal models cannot always adequately capture the dynamics. Therefore, in the QosCosGrid project we model an example real dynamic cellular process - lipid rafts movements (see Figure 1) in order to exploit the power of grid computing and divide the computational membranes into subdomains to perform high performance simulations in each subdomain with asynchronous and synchronous communication (in terms of particle movement) between the regions. In Use case 3, we use a spatial Monte-Carlo approach to model the different kinds of cellular processes on the plasma membrane. In some cases, chemical reactions can be described that promote cell death signalling by inhibition of certain proteins; other reactions may block neuronal death and hence contribute to increasing numbers of particular proteins (e.g. presenilin). Protein signalling capability can be regulated (for example, via spatial segregation involving lipid rafts). Some of these situations may provide a possible explanation for the development of neurodegenerative conditions such as Alzheimer disease.
Use case 4 - Topology of gene regulatory networks
The study of GRNs plays an important role in the understanding of organisms as complex biological systems. If we wish to understand the functionality of GRNs and their impact on disease, we must explore their architecture and dynamics. Given the underlying complexity and the large amount of data involved, this can only realistically be achieved with the help of mathematical and computational models. The main interest here is to gain an understanding of the topology of these networks, their components and how are they connected to each other.
Use case 5 - System bioology
The simultaneous solving of sets of highly coupled differential equations (DEs) is a common task in CS studies. The sets of DEs are generated from pro-typical problems in systems biology. Namely, gene regulatory networks (GRNs) can be represented as systems of some type of DEs based on biochemical relationships (transcription, translation, binding, enzyme reactivity, etc). Typically, time series of data is obtained from DNA microarray experiments or from quantitative RT-PCR. The sets of DEs contain high number of typically uncharacterised parameters. The solution of one of the ODEs depending on a particular set of parameters is a relatively straightforward computational problem for a typical network of a few (tens) gene and protein nodes, but become an important task in systems of thousands or millions of nodes in neuronal networks. Additionally, the evaluation of global optimum sets of parameters for a given experimentally determined phenotype becomes an intractable task if a highly distributed environment is not available. ByoDyn is a computational package aimed at integrating different types of DEs, through its interface with several publicly available packages (in addition to its own algorithms).
Use case 6 - Evolutionary Algorithm Toolbox
An evolutionary algorithm (EA) is a robust search algorithm that is modelled on the mechanics of natural selection and natural genetics. It combines survival of the fittest among individuals with a structured yet randomised information exchange to form a search algorithm. In a genetic algorithm (GA), each individual is implemented as data structure that represents a potential solution to the problem at hand. It is evaluated by some fitness function, which, in general, is a comparison of the observed data with those predicted by the model. A new generation of individuals is then spawned from the fittest individuals of the current generation. Members of this new population, in turn, undergo alterations by means of mutation and crossover operations to form new solutions. Mutation arbitrarily alters one or more genes (data) whereas Crossover combines the features of two or more parent chromosomes (data structures) to form two progeny with characteristics similar to their parents. Other types of EAs have been devised (macroevolutionary algorithms, handling population rather than individual evolution, for example) but by far GAs are the most spread algorithms in global searches in complex systems.
Use case 8 - Individual-based Evolutionary Ecology
Individual-based evolutionary ecology is a bottom-up modeling approach that allows us to address many issues that fall beyond traditional top-down (differential equations) approach. Organisms are treated as discrete individual entities with their own phenotypes and (local) interaction properties. Evolving ecologies are thus studied as as a large dynamic complex system. Our focus is on emergent property of phenotype-to-phenotype interactions in large-scale ecological evolutionary simulations. This theoretical framework enables us the gain insight into topics of species coexistence and differentiation, sustained evolution, and the formation and evolution of food-webs within an artificial life environment.
Use case 9 - Social Influence and Discrete Choice
This model studies the dynamics of social choices made by humans subject to social influences. Our bounded rational decision makers are facing discrete choices like the selection of a particular brand in the market, or a particular political movement during the elections. Models like this have been created and studied over the last couple of decades, with much success. However, those models typically assumed independent decision makers and focused on the modelling of the individual decision making process. Social choices were typically simple aggregates of individual decisions. The idea of the importance of social influence to aggregate social choices, while simple, has only started to be incorporated in such models very recently, in parallel with the advent of novel scientific interest in social network studies. Social influence is typically depicted as a network that specifies interactions among decision making agents.