Research Groups | Parallel and Distributed Processing
The Parallel and Distributed Processing Group (GPPD) works on solutions for the various parallel and distributed processing platforms, including multi-core chips, shared memory architectures, computer grids, clusters, P2P, and ubiquitous systems. The group works on the architecture layer, develops solutions for managing High-Performance Processing machines, and acts on parallel programming for data storage systems and on middleware for ubiquitous (pervasive) systems and massively multiplayer online games.
- Superscalar and multi-core architectures: The group studies the possible optimizations in such architectures, using predication, value prediction, traces, and reuse of instructions. The emphasis is on CMP architectures and Multi-cores.
- Clusters and grid management: The group provides integrated solutions for management activities of such platforms: automated deployment, job submission and scheduling (batch systems), result retrieval. An integrated portal is under development.
- Ubiquitous computing: The group aims at providing support to the mobile distributed applications whose behavior adapts to the computational resources available at the user environment (PDAs, cell phones, etc.). Emphasis is on solutions for systems and applications with high integration of computational resources with the environment and in computational invisibility.
- Parallel programming and scheduling: New ways of obtaining adaptive parallel applications are investigated through dynamic task scheduling. This topic works mainly with MPI and investigates, among other objectives, programming models which allow adaptability.
- Monitoring and debugging of parallel programs: The group searches new tools and techniques to visualize the behavior of parallel applications running on clusters or grids, handling large amounts of information in distributed environments.
- Distributed data storage systems: This topic considers the possibility of adapting classic data management techniques, such as file systems and databases, to classic distributed systems in clusters or grids. Typically, replication and location mechanisms must be employed to provide performance and reliability.
- Peer-to-Peer systems: In this topic, the group researches fully decentralized systems, with algorithms adapted to information lookup, duplication management, and fault tolerance. A specific thread searches for solutions to provide support for massively multiplayer online games.
Recent Research Projects in the Area
- P2PSE – Development of a portable C++ middleware which gives support to massively multiplayer online games (2006-2007). Funding: FINEP.
- GBRAMS – Calculation of climatology in grid (2005-2006). UFRGS/INPE/USP. Funding: FINEP.
- JAVA-WSPAD – A web-service portal to run Java applications in clusters (2005-2007). UFRGS/UFRJ. Funding: FINEP.
- ISAM – Runtime and development environment for ubiquitous computing (2004-2005). UFRGS/UFPel/Unisinos/UFSM. Funding: CNPq, FAPERGS.
- CLUMSSY – cluster management and parallel program scheduling (2004-2006). UFRGS. Funding: Hewlett-Packard Brazil.
- PROBRAL – grid and cluster management (2007-2009). UFRGS/TUB (Berlin). Funding: CAPES/DAAD (Germany).
- PAD2 – grid and cluster management (2006-2008). UFRGS/ID-IMAG (Grenoble). Funding: CAPES/COFECUB (France).
- HEP – Development of middleware solutions for grids with characteristics such as the ones found in HEP (High Energy Physics) grid. Currently: emphasis on file systems. Cooperation with UERJ, Caltech, ID-IMAG and CERN.
Results of Recent Research
- Simulation of 10 years of climatology for Brazil, used by meteorologists. Available at the INPE/CPTEC website.
- Improvements in the “Direto” content management system (CMS) for posting, scheduling and cataloging. Direto was developed by PROCERGS and is in use by many Brazilian public agencies.