Skip to main content
Go to the home page of the European Commission (opens in new window)
English en
CORDIS - EU research results
CORDIS
Content archived on 2024-04-19

Parallel Formal Computing Environment

Objective

The aim of PARFORCE is to provide and evaluate formal tools for the development of parallel programs and their efficient execution. The first objective is to apply the emerging techniques for formal program analysis and manipulation to solve important problems relating to parallel execution such as dependency and granularity analysis, partitioning, or memory management. This is done by building tools for the formal development of parallel logic programs. The second objective is to integrate such tools with practical parallel execution platforms. The third objective is to provide an assessment of the effectiveness of the tools in such platforms.
Research has been carried out with respect to the construction (and evaluation of use of) formal tools for the development of parallel programs and their efficient execution. To this end the emerging techniques for formal program analysis and manipulation are applied to central issues relating to parallel execution such as dependency and granularity analysis, partitioning, or memory management.

Results so far in automatic parallelization include progress in partitioning programs into independent process and aggregating these processes to achieve appropriate grain size. New, more lax notions of dependency have been defined. The related analysis and transformation frameworks have been developed and implemented, resulting in a first set of integrated tools for dependency analysis, producer/consumer determination, granularity control, process graph shape modification, and so on which are expected to result in improved parallel program behaviour. In the context of analysis of concurrent programs current results include an analysis deriving definite and possible ordering information and a compilation technique which translates a program into threads. Also, a method for analysing concurrent programs with deep guards has been implemented in such a language (AKL). The notion of confluence has been introduced showing that for the large class of confluent programs suspension analysis is efficient and accurate. A denotational semantics useful for compositional analysis has been proposed, and shown to be a correct approximation of the standard operational model.

In the context of parallel program development a declarative debugger for the G'odel programming language and a visualizer for a number of parallelizm paradigms have been developed. Finally, common syntax and interfaces have been designed in order to allow interoperability and assessment of the tools.
APPROACH AND METHODS

The thesis of the project is that the complexity of developing parallel programs can be mastered with the aid of formal tools to support the process. The role of these tools must be to relieve the programmer from concerns relating to the low-level tactical issues, (such as dependency and granularity analysis, scheduling, and load balancing) and to provide support for the decisions relating to high-level strategic issues, eg algorithm development. To this end the project exploits the semantic foundations of logic programming (more generally declarative programming) that facilitate tractable formal program analysis, eg abstract interpretation, and manipulation, eg program transformation. Analysis and transformation tools are built using these ideas for several tasks, such as automatic parallelisation of sequential languages (ie automatic construction of dependency graphs and transformation into parallel programs), granularity analysis (where a parallelised program or an originally concurrent program is sequentialised in part to avoid overhead due to the scheduling of too fine grained tasks), and storage management optimisation. These tools are integrated into parallel platforms and their effectiveness assessed on such platforms. Finally, the project also includes a working group on parallel program development.

POTENTIAL

The approach and aims of the project are of great strategic importance because the potential performance of parallel hardware cannot currently be realised because of the complexity of edeveloping parallel software. Thus the PARFORCE project is not just of scientific interest, it is also of major commercial importance. The presence of two industrial research centers, ECRC and SICS, illustrates the commercial importance attributed to the work and provides the route for the exploitation of the results.

Fields of science (EuroSciVoc)

CORDIS classifies projects with EuroSciVoc, a multilingual taxonomy of fields of science, through a semi-automatic process based on NLP techniques. See: The European Science Vocabulary.

You need to log in or register to use this function

Programme(s)

Multi-annual funding programmes that define the EU’s priorities for research and innovation.

Topic(s)

Calls for proposals are divided into topics. A topic defines a specific subject or area for which applicants can submit proposals. The description of a topic comprises its specific scope and the expected impact of the funded project.

Data not available

Call for proposal

Procedure for inviting applicants to submit project proposals, with the aim of receiving EU funding.

Data not available

Funding Scheme

Funding scheme (or “Type of Action”) inside a programme with common features. It specifies: the scope of what is funded; the reimbursement rate; specific evaluation criteria to qualify for funding; and the use of simplified forms of costs like lump sums.

Data not available

Coordinator

UNIVERSITAT POLITECNICA DE MADRID
EU contribution
No data
Address
CAMPUS DE MONTEGANCEDO
28660 MADRID
Spain

See on map

Total cost

The total costs incurred by this organisation to participate in the project, including direct and indirect costs. This amount is a subset of the overall project budget.

No data

Participants (6)

My booklet 0 0