289 research outputs found

    Edit and verify

    Full text link
    Automated theorem provers are used in extended static checking, where they are the performance bottleneck. Extended static checkers are run typically after incremental changes to the code. We propose to exploit this usage pattern to improve performance. We present two approaches of how to do so and a full solution

    Automatically Leveraging MapReduce Frameworks for Data-Intensive Applications

    Full text link
    MapReduce is a popular programming paradigm for developing large-scale, data-intensive computation. Many frameworks that implement this paradigm have recently been developed. To leverage these frameworks, however, developers must become familiar with their APIs and rewrite existing code. Casper is a new tool that automatically translates sequential Java programs into the MapReduce paradigm. Casper identifies potential code fragments to rewrite and translates them in two steps: (1) Casper uses program synthesis to search for a program summary (i.e., a functional specification) of each code fragment. The summary is expressed using a high-level intermediate language resembling the MapReduce paradigm and verified to be semantically equivalent to the original using a theorem prover. (2) Casper generates executable code from the summary, using either the Hadoop, Spark, or Flink API. We evaluated Casper by automatically converting real-world, sequential Java benchmarks to MapReduce. The resulting benchmarks perform up to 48.2x faster compared to the original.Comment: 12 pages, additional 4 pages of references and appendi

    An integrated programming environment for pseudo-code development, IPE-PC

    Get PDF
    An Integrated Programming Environment, IPE-PC, that supports pseudo-code development has been designed and implemented. This environment is based on a Pascal-like language which is designed according to the requirements of a language-based environment. The nucleus of IPE-PC is a language-based editor which represents programs as graphs internally. The same representation is used in every mode of the environment (i.e., editing, compilation, execution, debugging and translation). The system provides facilities to take advantage of both top-down and bottom-up programming. Stepwise refinement has been supported by providing comment structures that can be transformed into procedures. Bottom-up programming is supported because it is possible to create and save program segments which can be inserted to the programs at the appropriate points --Abstract, page ii

    Fault Management in Distributed Systems

    Get PDF
    In the past decade, distributed systems have rapidly evolved, from simple client/server applications in local area networks, to Internet-scale peer-to-peer networks and large-scale cloud platforms deployed on tens of thousands of nodes across multiple administrative domains and geographical areas. Despite of the growing popularity and interests, designing and implementing distributed systems remains challenging, due to their ever- increasing scales and the complexity and unpredictability of the system executions. Fault management strengthens the robustness and security of distributed systems, by detecting malfunctions or violations of desired properties, diagnosing the root causes and maintaining verifiable evidences to demonstrate the diagnosis results. While its importance is well recognized, fault management in distributed systems, on the other hand, is notoriously difficult. To address the problem, various mechanisms and systems have been proposed in the past few years. In this report, we present a survey of these mechanisms and systems, and taxonomize them according to the techniques adopted and their application domains. Based on four representative systems (Pip, Friday, PeerReview and TrInc), we discuss various aspects of fault management, including fault detection, fault diagnosis and evidence generation. Their strength, limitation and application domains are evaluated and compared in detail

    Compilation par serveur persistant et génération rapide de code

    Get PDF
    La compilation rapide -- Parties d'un compilateur -- Modèle du temps de compilation -- Interprétation et compilation dynamique -- Approches matérielles et parallèles -- Recompilation sélective -- Recompilation incrémentale -- Partie finale d'un compilateur -- Serveur de compilation -- Approche proposée de serveur de compilation -- Réalisation du serveur de compilation -- Génération de code -- Problème de génération de code -- Refonte de la génération de code -- Évaluation de la vitesse de compilation -- Méthodes d'évaluation de la performance -- Performance du générateur de code -- Performance du serveur de compilation

    Impacts of climate change on hydropower generation and developing adaptation measures through hydrologic modeling and multi-objective optimization

    Get PDF
    The climate change resulting from anthropogenic factors is driving governments and policy-makers to provide additional thrust on renewable energy. Hydropower, which is the dominant renewable component of the energy-mix, is also under threat due to the changing climate conditions. The present study aims to quantify the impact of climate change on hydropower generation, the associated revenues and subsequently suggest the adaptation measures through adaptive reservoir management. A modeling chain consisting of hydrologic and hydropower simulation models is adopted to evaluate the impacts of projected climate change on hydropower generation. Calibrated hydrologic models forced with the climate data from various climate models have been widely employed for future streamflow projection. A reliable modelling framework should ensure the simulation of reality with limited uncertainty, thus enhancing its predictive ability. In the literature, the hydrologic model assessment is reported to be inadequate when carried out based on only statistical objectives or limited number of evaluation metrics. In the present research, the thrust is given on improving the hydrologic model simulation through model diagnostic assessment, incorporating hydrologic signatures and multi-objective model calibration. Multi-objective evolutionary algorithm (MOEA) is coupled with the hydrologic model, Soil and Water Assessment Tool (SWAT), to perform model calibration. The methodology was first tested for Saugeen River watershed in Southern Ontario and then applied to the Magpie River watershed model located in Northern Ontario. The uncertainties contributed by the hydrologic models have generally been given a lesser focus in climate change impact analysis. In the present research, the uncertainty emanating from model parameters was investigated and found to dominate during some periods. The accounting of hydrologic model uncertainty is found to be vital for providing an improved assessment. Steephill Falls hydroelectric project located on Magpie River in Northern Ontario is considered as a case study for assessing climate change impacts on hydropower. The results show that the annual generation is not considerably affected but there is a significant seasonal redistribution on energy production. The changes in the hydropower revenues compared to the present level for the four seasons viz., winter, spring, summer and autumn are estimated to be 21.1%, 18.4%, -13.4% and -15.9%, respectively, for mid-century and 23.1%, 19.5%, -20.1% and -22.9% for end-century scenarios. In order to reduce the vulnerability of hydropower system to climate change and consequently mitigate the impacts, it will be profitable for the project owners to provide suitable adaptation measures. Adaptive reservoir management through multi-objective optimization of reservoir level was found to be an effective approach to develop adaptation measures provided additional live storage is made available. It also reduced the vulnerability of the system to climate change by 24%. The seasonal alteration in the energy production will require the project owners to arrange modification in power purchase/sharing agreement with the buyers
    corecore