11,215 research outputs found

    Efficient Algorithms for Scheduling Moldable Tasks

    Full text link
    We study the problem of scheduling nn independent moldable tasks on mm processors that arises in large-scale parallel computations. When tasks are monotonic, the best known result is a (32+ϵ)(\frac{3}{2}+\epsilon)-approximation algorithm for makespan minimization with a complexity linear in nn and polynomial in logm\log{m} and 1ϵ\frac{1}{\epsilon} where ϵ\epsilon is arbitrarily small. We propose a new perspective of the existing speedup models: the speedup of a task TjT_{j} is linear when the number pp of assigned processors is small (up to a threshold δj\delta_{j}) while it presents monotonicity when pp ranges in [δj,kj][\delta_{j}, k_{j}]; the bound kjk_{j} indicates an unacceptable overhead when parallelizing on too many processors. For a given integer δ5\delta\geq 5, let u=δ21u=\left\lceil \sqrt[2]{\delta} \right\rceil-1. In this paper, we propose a 1θ(δ)(1+ϵ)\frac{1}{\theta(\delta)} (1+\epsilon)-approximation algorithm for makespan minimization with a complexity O(nlognϵlogm)\mathcal{O}(n\log{\frac{n}{\epsilon}}\log{m}) where θ(δ)=u+1u+2(1km)\theta(\delta) = \frac{u+1}{u+2}\left( 1- \frac{k}{m} \right) (mkm\gg k). As a by-product, we also propose a θ(δ)\theta(\delta)-approximation algorithm for throughput maximization with a common deadline with a complexity O(n2logm)\mathcal{O}(n^{2}\log{m})

    Experience with Process Modeling in the Marvel Software Development Environment Kernel

    Get PDF
    We have been working for several years on rule-based process modeling and the implementation of such models as part of the foundation for software development environments. We have defined a kernel, called MARVEL, for such an architecture and implemented several successive versions of the kernel and several small environments using the kernel. We have evaluated our results to date, and discovered several significant flaws and delineated several important open problems. Although the details are specific to rule-based process modeling, we believe that our insights will be valuable to other researchers and developers contemplating process modeling mechanisms

    Type-Directed Weaving of Aspects for Polymorphically Typed Functional Languages

    Get PDF
    Incorporating aspect-oriented paradigm to a polymorphically typed functional language enables the declaration of type-scoped advice, in which the effect of an aspect can be harnessed by introducing possibly polymorphic type constraints to the aspect. The amalgamation of aspect orientation and functional programming enables quick behavioral adaption of functions, clear separation of concerns and expressive type-directed programming. However, proper static weaving of aspects in polymorphic languages with a type-erasure semantics remains a challenge. In this paper, we describe a type-directed static weaving strategy, as well as its implementation, that supports static type inference and static weaving of programs written in an aspect-oriented polymorphically typed functional language, AspectFun. We show examples of type-scoped advice, identify the challenges faced with compile-time weaving in the presence of type-scoped advice, and demonstrate how various advanced aspect features can be handled by our techniques. Lastly, we prove the correctness of the static weaving strategy with respect to the operational semantics of AspectFun

    On the preciseness of subtyping in session types

    Get PDF
    Subtyping in concurrency has been extensively studied since early 1990s as one of the most interesting issues in type theory. The correctness of subtyping relations has been usually provided as the soundness for type safety. The converse direction, the completeness, has been largely ignored in spite of its usefulness to define the greatest subtyping relation ensuring type safety. This paper formalises preciseness (i.e. both soundness and completeness) of subtyping for mobile processes and studies it for the synchronous and the asynchronous session calculi. We first prove that the well-known session subtyping, the branching-selection subtyping, is sound and complete for the synchronous calculus. Next we show that in the asynchronous calculus, this subtyping is incomplete for type-safety: that is, there exist session types T and S such that T can safely be considered as a subtype of S, but T ≤ S is not derivable by the subtyping. We then propose an asynchronous sub-typing system which is sound and complete for the asynchronous calculus. The method gives a general guidance to design rigorous channel-based subtypings respecting desired safety properties

    Towards Generic Monitors for Object-Oriented Real-Time Maude Specifications

    Get PDF
    Non-Functional Properties (NFPs) are crucial in the design of software. Specification of systems is used in the very first phases of the software development process for the stakeholders to make decisions on which architecture or platform to use. These specifications may be an- alyzed using different formalisms and techniques, simulation being one of them. During a simulation, the relevant data involved in the anal- ysis of the NFPs of interest can be measured using monitors. In this work, we show how monitors can be parametrically specified so that the instrumentation of specifications to be monitored can be automatically performed. We prove that the original specification and the automati- cally obtained specification with monitors are bisimilar by construction. This means that the changes made on the original system by adding monitors do not affect its behavior. This approach allows us to have a library of possible monitors that can be safely added to analyze different properties, possibly on different objects of our systems, at will.Universidad de Málaga, Campus de Excelencia Internacional Andalucía Tech. Spanish MINECO/FEDER project TIN2014-52034-R, NSF Grant CNS 13-19109

    Bilinearity rank of the cone of positive polynomials and related cones

    Get PDF
    For a proper cone K ⊂ Rn and its dual cone K the complementary slackness condition xT s = 0 defines an n-dimensional manifold C(K) in the space { (x, s) | x ∈ K, s ∈ K^* }. When K is a symmetric cone, this manifold can be described by a set of n bilinear equalities. When K is a symmetric cone, this fact translates to a set of n linearly independent bilinear identities (optimality conditions) satisfied by every (x, s) ∈ C(K). This proves to be very useful when optimizing over such cones, therefore it is natural to look for similar optimality conditions for non-symmetric cones. In this paper we define the bilinearity rank of a cone, which is the number of linearly independent bilinear identities valid for the cone, and describe a linear algebraic technique to bound this quantity. We examine several well-known cones, in particular the cone of positive polynomials P2n+1 and its dual, the closure of the moment cone M2n+1, and compute their bilinearity ranks. We show that there are exactly four linearly independent bilinear identities which hold for all (x,s) ∈ C(P2n+1), regardless of the dimension of the cones. For nonnegative polynomials over an interval or half-line there are only two linearly independent bilinear identities. These results are extended to trigonometric and exponential polynomials

    Bilinearity rank of the cone of positive polynomials and related cones

    Get PDF
    For a proper cone K ⊂ Rn and its dual cone K the complementary slackness condition xT s = 0 defines an n-dimensional manifold C(K) in the space { (x, s) | x ∈ K, s ∈ K^* }. When K is a symmetric cone, this manifold can be described by a set of n bilinear equalities. When K is a symmetric cone, this fact translates to a set of n linearly independent bilinear identities (optimality conditions) satisfied by every (x, s) ∈ C(K). This proves to be very useful when optimizing over such cones, therefore it is natural to look for similar optimality conditions for non-symmetric cones. In this paper we define the bilinearity rank of a cone, which is the number of linearly independent bilinear identities valid for the cone, and describe a linear algebraic technique to bound this quantity. We examine several well-known cones, in particular the cone of positive polynomials P2n+1 and its dual, the closure of the moment cone M2n+1, and compute their bilinearity ranks. We show that there are exactly four linearly independent bilinear identities which hold for all (x,s) ∈ C(P2n+1), regardless of the dimension of the cones. For nonnegative polynomials over an interval or half-line there are only two linearly independent bilinear identities. These results are extended to trigonometric and exponential polynomials

    Optimization Based Self-localization for IoT Wireless Sensor Networks

    Get PDF
    In this paper we propose an embedded optimization framework for the simultaneous self-localization of all sensors in wireless sensor networks making use of range measurements from ultra-wideband (UWB) signals. Low-power UWB radios, which provide time-of-arrival measurements with decimeter accuracy over large distances, have been increasingly envisioned for realtime localization of IoT devices in GPS-denied environments and large sensor networks. In this work, we therefore explore different non-linear least-squares optimization problems to formulate the localization task based on UWB range measurements. We solve the resulting optimization problems directly using non-linear-programming algorithms that guarantee convergence to locally optimal solutions. This optimization framework allows the consistent comparison of different optimization methods for sensor localization. We propose and demonstrate the best optimization approach for the self-localization of sensors equipped with off-the-shelf microcontrollers using state-of-the-art code generation techniques for the plug-and-play deployment of the optimal localization algorithm. Numerical results indicate that the proposed approach improves localization accuracy and decreases computation times relative to existing iterative methods

    Applicative Bidirectional Programming with Lenses

    Get PDF
    A bidirectional transformation is a pair of mappings between source and view data objects, one in each direction. When the view is modified, the source is updated accordingly with respect to some laws. One way to reduce the development and maintenance effort of bidirectional transformations is to have specialized languages in which the resulting programs are bidirectional by construction---giving rise to the paradigm of bidirectional programming. In this paper, we develop a framework for applicative-style and higher-order bidirectional programming, in which we can write bidirectional transformations as unidirectional programs in standard functional languages, opening up access to the bundle of language features previously only available to conventional unidirectional languages. Our framework essentially bridges two very different approaches of bidirectional programming, namely the lens framework and Voigtlander’s semantic bidirectionalization, creating a new programming style that is able to bag benefits from both
    corecore