713 research outputs found

    Virtual Machine Support for Many-Core Architectures: Decoupling Abstract from Concrete Concurrency Models

    Get PDF
    The upcoming many-core architectures require software developers to exploit concurrency to utilize available computational power. Today's high-level language virtual machines (VMs), which are a cornerstone of software development, do not provide sufficient abstraction for concurrency concepts. We analyze concrete and abstract concurrency models and identify the challenges they impose for VMs. To provide sufficient concurrency support in VMs, we propose to integrate concurrency operations into VM instruction sets. Since there will always be VMs optimized for special purposes, our goal is to develop a methodology to design instruction sets with concurrency support. Therefore, we also propose a list of trade-offs that have to be investigated to advise the design of such instruction sets. As a first experiment, we implemented one instruction set extension for shared memory and one for non-shared memory concurrency. From our experimental results, we derived a list of requirements for a full-grown experimental environment for further research

    The Glasgow Parallel Reduction Machine: Programming Shared-memory Many-core Systems using Parallel Task Composition

    Get PDF
    We present the Glasgow Parallel Reduction Machine (GPRM), a novel, flexible framework for parallel task-composition based many-core programming. We allow the programmer to structure programs into task code, written as C++ classes, and communication code, written in a restricted subset of C++ with functional semantics and parallel evaluation. In this paper we discuss the GPRM, the virtual machine framework that enables the parallel task composition approach. We focus the discussion on GPIR, the functional language used as the intermediate representation of the bytecode running on the GPRM. Using examples in this language we show the flexibility and power of our task composition framework. We demonstrate the potential using an implementation of a merge sort algorithm on a 64-core Tilera processor, as well as on a conventional Intel quad-core processor and an AMD 48-core processor system. We also compare our framework with OpenMP tasks in a parallel pointer chasing algorithm running on the Tilera processor. Our results show that the GPRM programs outperform the corresponding OpenMP codes on all test platforms, and can greatly facilitate writing of parallel programs, in particular non-data parallel algorithms such as reductions.Comment: In Proceedings PLACES 2013, arXiv:1312.221

    Performance of Coupled Product Development Activities with a Deadline

    Get PDF
    This paper explores the performance of coupled development tasks subject to a deadline constraint by proposing a performance generation model (PGM). The goal of the PGM is to develop insights about optimal strategies (i.e. sequential, concurrent, or overlapped) to manage coupled design tasks that share fixed amount of engineering resources subject to performance and deadline constraints. Model analysis characterizes the solution space for the coupled development problem. The solution space is used to explore the generation of product performance and the associated dynamic forces affecting concurrent development practices. We use these forces to explain conditions under which concurrency is a desirable strategy

    Darwin's Rainbow: Evolutionary radiation and the spectrum of consciousness

    Get PDF
    Evolution is littered with paraphyletic convergences: many roads lead to functional Romes. We propose here another example - an equivalence class structure factoring the broad realm of possible realizations of the Baars Global Workspace consciousness model. The construction suggests many different physiological systems can support rapidly shifting, sometimes highly tunable, temporary assemblages of interacting unconscious cognitive modules. The discovery implies various animal taxa exhibiting behaviors we broadly recognize as conscious are, in fact, simply expressing different forms of the same underlying phenomenon. Mathematically, we find much slower, and even multiple simultaneous, versions of the basic structure can operate over very long timescales, a kind of paraconsciousness often ascribed to group phenomena. The variety of possibilities, a veritable rainbow, suggests minds today may be only a small surviving fraction of ancient evolutionary radiations - bush phylogenies of consciousness and paraconsciousness. Under this scenario, the resulting diversity was subsequently pruned by selection and chance extinction. Though few traces of the radiation may be found in the direct fossil record, exaptations and vestiges are scattered across the living mind. Humans, for instance, display an uncommonly profound synergism between individual consciousness and their embedding cultural heritages, enabling efficient Lamarkian adaptation

    A Model Driven Architecture Framework for Robot Design and Automatic Code Generation

    Get PDF
    International audienceThis work presents a research and development experiment in software engineering at the IMT Mines Ales, France. The goal is to define a framework allowing a system controller to be graphically designed and its java code to be automatically generated. This framework is expected to be a support for students following the system engineering curriculum, and who have to program LEGO Mindstorms EV3 robots although they have not already been trained to concurrent Java programming. The experimental methodology focuses on learning and implementing the following paradigms: model driven design, software architecture for event driven systems and reactive system programming using JAVA threads. We present the design framework defined during this experiment, and the feedback of students who have been involved in setting up the state of the art and developing the framework

    Lolliproc: to Concurrency from Classical Linear Logic via Curry-Howard and Control

    Get PDF
    While many type systems based on the intuitionistic fragment of linear logic have been proposed, applications in programming languages of the full power of linear logic-including double-negation elimination-have remained elusive. Meanwhile, linearity has been used in many type systems for concurrent programs-e.g., session types-which suggests applicability to the problems of concurrent programming, but the ways in which linearity has interacted with concurrency primitives in lambda calculi have remained somewhat ad-hoc. In this paper we connect classical linear logic and concurrent functional programming in the language Lolliproc, which provides simple primitives for concurrency that have a direct logical interpretation and that combine to provide the functionality of session types. Lolliproc features a simple process calculus “under the hood” but hides the machinery of processes from programmers. We illustrate Lolliproc by example and prove soundness, strong normalization, and confluence results, which, among other things, guarantees freedom from deadlocks and race conditions

    Applying Formal Methods to Networking: Theory, Techniques and Applications

    Full text link
    Despite its great importance, modern network infrastructure is remarkable for the lack of rigor in its engineering. The Internet which began as a research experiment was never designed to handle the users and applications it hosts today. The lack of formalization of the Internet architecture meant limited abstractions and modularity, especially for the control and management planes, thus requiring for every new need a new protocol built from scratch. This led to an unwieldy ossified Internet architecture resistant to any attempts at formal verification, and an Internet culture where expediency and pragmatism are favored over formal correctness. Fortunately, recent work in the space of clean slate Internet design---especially, the software defined networking (SDN) paradigm---offers the Internet community another chance to develop the right kind of architecture and abstractions. This has also led to a great resurgence in interest of applying formal methods to specification, verification, and synthesis of networking protocols and applications. In this paper, we present a self-contained tutorial of the formidable amount of work that has been done in formal methods, and present a survey of its applications to networking.Comment: 30 pages, submitted to IEEE Communications Surveys and Tutorial

    Developing Auxiliary Resource Materials to Support the EngageNY Geometry Curriculum

    Get PDF
    With the advent of current education reform, and the introduction of the Common Core State Standards for Mathematics, the present offerings of the geometry curriculum have become dated. One contribution to remedy this situation is a project by the state of New York called EngageNY. EngageNY is a common core aligned mathematics curriculum across all grades. The EngageNY Geometry Curriculum Module 1 is the basis from which this thesis was developed. It is the purpose of this thesis to present a supplement to the EngageNY Geometry Module 1 Curriculum and to describe why it is advantageous to have such a supplement available. The intention of creating the problems presented in this thesis is to offer a set of high quality practice problems as an additional resource geometry teachers could use to complement their current curriculum. After careful analysis of Module 1of the EngageNY Geometry Curriculum, it became clear that extra practice problems were needed to augment the problem sets offered in each lesson of Module 1. Mathematics is a discipline that requires practice. The problems for this thesis provide a useful enrichment to enhance the EngageNY materials. In addition to extra practice, I believe that all levels of ability should be addressed in the geometry classroom, therefore differentiation played a key role in the development of the practice problems presented in the auxiliary resource materials. And, while EngageNY Geometry Module 1 is comprehensive in its offering of lesson activities, its contribution to providing plenty of assessment items is lacking. The problems developed for this thesis address this problem by providing a number of problems that reflect the current format of Louisiana standardized tests, namely real world application problems and multiple choice items. The enrichment problems presented in this thesis were designed to reflect the ideas portrayed in EngageNY Geometry Module 1. I tried to stay true to the essence of each lesson of Module 1 but also kept in mind my objectives of providing problems for differentiation and application. The analysis of Module 1 began as I read through each lesson before teaching it. Notes were taken on student reactions to the lesson and on the timeliness of the lesson. I then noted whether the problem sets offered in Module 1 were adequate for extra practice and commented on their application to real world situations. During the process of creating the practice problems, it was my aim to produce problems in a format that is highly conducive to learning. To achieve my goals, each problem was designed with an easy to read format, an accompanying diagram and a detailed solution designed to help teachers save time. I hope that this attention to detail will enhance and distinguish this work as a worthwhile, quality resource that will enhance any geometry teacher’s classroom
    • …
    corecore