58,077 research outputs found

    Event Stream Processing with Multiple Threads

    Full text link
    Current runtime verification tools seldom make use of multi-threading to speed up the evaluation of a property on a large event trace. In this paper, we present an extension to the BeepBeep 3 event stream engine that allows the use of multiple threads during the evaluation of a query. Various parallelization strategies are presented and described on simple examples. The implementation of these strategies is then evaluated empirically on a sample of problems. Compared to the previous, single-threaded version of the BeepBeep engine, the allocation of just a few threads to specific portions of a query provides dramatic improvement in terms of running time

    Foliation, jet bundle and quantization of Einstein gravity

    Get PDF
    In \cite{Park:2014tia} we proposed a way of quantizing gravity with the Hamiltonian and Lagrangian analyses in the ADM setup. One of the key observations was that the physical configuration space of the 4D Einstein-Hilbert action admits a three-dimensional description, thereby making gravity renormalization possible through a metric field redefinition. Subsequently, a more mathematical and complementary picture of the reduction based on foliation theory was presented in \cite{Park:2014qoa}. With the setup of foliation the physical degrees of freedom have been identified with a certain leaf. Here we expand the work of \cite{Park:2014qoa} by adding another mathematical ingredient - an element of jet bundle theory. With the introduction of the jet bundle, the procedure of identifying the true degrees of freedom outlined therein is made precise and the whole picture of the reduction is put on firm mathematical ground.Comment: 34 pages, 3 figures, sections restructured and two appendices added, comments on loop quantum gravity added, refs added, version to appear in Frontiers in Physic

    On the efficiency of reductions in ”-SIMD media extensions

    Get PDF
    Many important multimedia applications contain a significant fraction of reduction operations. Although, in general, multimedia applications are characterized for having high amounts of Data Level Parallelism, reductions and accumulations are difficult to parallelize and show a poor tolerance to increases in the latency of the instructions. This is specially significant for ”-SIMD extensions such as MMX or AltiVec. To overcome the problem of reductions in ”-SIMD ISAs, designers tend to include more and more complex instructions able to deal with the most common forms of reductions in multimedia. As long as the number of processor pipeline stages grows, the number of cycles needed to execute these multimedia instructions increases with every processor generation, severely compromising performance. The paper presents an in-depth discussion of how reductions/accumulations are performed in current ”-SIMD architectures and evaluates the performance trade-offs for near-future highly aggressive superscalar processors with three different styles of ”-SIMD extensions. We compare a MMX-like alternative to a MDMX-like extension that has packed accumulators to attack the reduction problem, and we also compare it to MOM, a matrix register ISA. We show that while packed accumulators present several advantages, they introduce artificial recurrences that severely degrade performance for processors with high number of registers and long latency operations. On the other hand, the paper demonstrates that longer SIMD media extensions such as MOM can take great advantage of accumulators by exploiting the associative parallelism implicit in reductions.Peer ReviewedPostprint (published version

    The Mind-Body Problem in the Origin of Logical Empiricism: Herbert Feigl and Psychophysical Parallelism

    Get PDF
    In the 19th century, "Psychophysical Parallelism" was the most popular solution of the mind-body problem among physiologists, psychologists and philosophers. (This is not to be mixed up with Leibnizian and other cases of "Cartesian" parallelism.) The fate of this non-Cartesian view, as founded by Gustav Theodor Fechner, is reviewed. It is shown that Feigl's "identity theory" eventually goes back to Alois Riehl who promoted a hybrid version of psychophysical parallelism and Kantian mind-body theory which was taken up by Feigl's teacher Moritz Schlick.

    The CIAO Multi-Dialect Compiler and System: An Experimentation Workbench for Future (C)LP Systems

    Full text link
    CIAO is an advanced programming environment supporting Logic and Constraint programming. It offers a simple concurrent kernel on top of which declarative and non-declarative extensions are added via librarles. Librarles are available for supporting the ISOProlog standard, several constraint domains, functional and higher order programming, concurrent and distributed programming, internet programming, and others. The source language allows declaring properties of predicates via assertions, including types and modes. Such properties are checked at compile-time or at run-time. The compiler and system architecture are designed to natively support modular global analysis, with the two objectives of proving properties in assertions and performing program optimizations, including transparently exploiting parallelism in programs. The purpose of this paper is to report on recent progress made in the context of the CIAO system, with special emphasis on the capabilities of the compiler, the techniques used for supporting such capabilities, and the results in the ĂĄreas of program analysis and transformation already obtained with the system

    Non-Strict Independence-Based Program Parallelization Using Sharing and Freeness Information.

    Get PDF
    The current ubiquity of multi-core processors has brought renewed interest in program parallelization. Logic programs allow studying the parallelization of programs with complex, dynamic data structures with (declarative) pointers in a comparatively simple semantic setting. In this context, automatic parallelizers which exploit and-parallelism rely on notions of independence in order to ensure certain efficiency properties. “Non-strict” independence is a more relaxed notion than the traditional notion of “strict” independence which still ensures the relevant efficiency properties and can allow considerable more parallelism. Non-strict independence cannot be determined solely at run-time (“a priori”) and thus global analysis is a requirement. However, extracting non-strict independence information from available analyses and domains is non-trivial. This paper provides on one hand an extended presentation of our classic techniques for compile-time detection of non-strict independence based on extracting information from (abstract interpretation-based) analyses using the now well understood and popular Sharing + Freeness domain. This includes algorithms for combined compile-time/run-time detection which involve special run-time checks for this type of parallelism. In addition, we propose herein novel annotation (parallelization) algorithms, URLP and CRLP, which are specially suited to non-strict independence. We also propose new ways of using the Sharing + Freeness information to optimize how the run-time environments of goals are kept apart during parallel execution. Finally, we also describe the implementation of these techniques in our parallelizing compiler and recall some early performance results. We provide as well an extended description of our pictorial representation of sharing and freeness information
    • 

    corecore