Project description
Mathematics to facilitate persistent programming
Non-volatile memory (NVM) is an emerging technology that provides computer memory capacity to retain stored data even after power is removed. However, this storage managing technology presents some limitations. The persistency semantics of the ordinary architectures remains unclear and full of counterintuitive behaviours causing severe difficulties in writing correct NVM programmes. In this context, the EU-funded PERSIST project will develop a solid mathematical basis to determine the possible results of persistent programmes. The project will develop formal empirically validated persistency models for mainstream hardware architectures and formal efficient persistency models for mainstream programming languages. PERSIST will also generate firmly grounded higher-level abstractions to facilitate persistent programming and effective testing and verification techniques for persistent programmes.
Objective
Non-volatile memory (NVM) is an emerging technology that provides orders of magnitude faster access to persistent storage (which preserves its contents after a crash or a power failure) than hard disks. While NVM is expected to radically change how we manage storage in applications, its programming model is standing on very shaky foundations.
The persistency semantics of the mainstream architectures is very unclear and full of counterintuitive behaviours. As a result, writing correct NVM programs is extremely difficult: there is no support for persistent programming in programming languages nor any techniques for testing and verifying their correct recovery from crashes.
PERSIST will develop a solid mathematical basis for determining the possible outcomes of persistent programs and reasoning about their correctness. More specifically, it will produce:
(1) formal empirically-validated persistency models for mainstream hardware architectures,
(2) formal efficient persistency models for mainstream programming languages,
(3) firmly-grounded higher-level abstractions to ease persistent programming, and
(4) the first effective testing and verification techniques for persistent programs.
Keywords
Project’s keywords as indicated by the project coordinator. Not to be confused with the EuroSciVoc taxonomy (Fields of science)
Project’s keywords as indicated by the project coordinator. Not to be confused with the EuroSciVoc taxonomy (Fields of science)
Programme(s)
Multi-annual funding programmes that define the EU’s priorities for research and innovation.
Multi-annual funding programmes that define the EU’s priorities for research and innovation.
-
H2020-EU.1.1. - EXCELLENT SCIENCE - European Research Council (ERC)
MAIN PROGRAMME
See all projects funded under this programme
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.
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.
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.
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.
ERC-COG - Consolidator Grant
See all projects funded under this funding scheme
Call for proposal
Procedure for inviting applicants to submit project proposals, with the aim of receiving EU funding.
Procedure for inviting applicants to submit project proposals, with the aim of receiving EU funding.
(opens in new window) ERC-2020-COG
See all projects funded under this callHost institution
Net EU financial contribution. The sum of money that the participant receives, deducted by the EU contribution to its linked third party. It considers the distribution of the EU financial contribution between direct beneficiaries of the project and other types of participants, like third-party participants.
80539 Munchen
Germany
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.