207,781 research outputs found

    Fast magnetohydrodynamic oscillation of longitudinally inhomogeneous prominence threads: an analogue with quantum harmonic oscillator

    Full text link
    Previous works indicate that the frequency ratio of second and first harmonics of kink oscillations has tendency towards 3 in the case of prominence threads. We aim to study the magnetohydrodynamic oscillations of longitudinally inhomogeneous prominence threads and to shed light on the problem of frequency ratio. Classical Sturm--Liouville problem is used for the threads with longitudinally inhomogeneous plasma density. We show that the spatial variation of total pressure perturbations along the thread is governed by the stationary Schr\"{o}dinger equation, where the longitudinal inhomogeneity of plasma density stands for the potential energy. Consequently, the equation has bounded solutions in terms of Hermite polynomials. Boundary conditions at the thread surface lead to transcendental dispersion equation with Bessel functions. Thin flux tube approximation of the dispersion equation shows that the frequency of kink waves is proportional to the expression \alpha(2n+1), where \alpha is the density inhomogeneity parameter and n is the longitudinal mode number. Consequently, the ratio of the frequencies of second and first harmonics tends to 3 in prominence threads. Numerical solution of the dispersion equation shows that the ratio only slightly decreases for thicker tubes in the case of smaller longitudinal inhomogeneity of external density, therefore the thin flux tube limit is a good approximation for prominence oscillations. However, stronger longitudinal inhomogeneity of external density may lead to the significant shift of frequency ratio for wider tubes and therefore the thin tube approximation may fail. The tendency of frequency ratio of second and first harmonics towards 3 in prominence threads is explained by the analogy of the oscillations with quantum harmonic oscillator, where the density inhomogeneity of the threads plays a role of potential energy.Comment: 8 pages, 7 figures (accepted in A&A

    NBBS: A Non-blocking Buddy System for Multi-core Machines

    Get PDF
    Common implementations of core memory allocation components, like the Linux buddy system, handle concurrent allocation/release requests by synchronizing threads via spinlocks. This approach is not prone to scale with large thread counts, a problem that has been addressed in the literature by introducing layered allocation services or replicating the core allocators—the bottom most ones within the layered architecture. Both these solutions tend to reduce the pressure of actual concurrent accesses to each individual core allocator. In this article we explore an alternative approach to scalability of memory allocation/release, which can be still combined with those literature proposals. We present a fully non-blocking buddy-system, where threads performing concurrent allocations/releases do not undergo any spinlock based synchronization. Our solution allows threads to proceed in parallel, and commit their allocations/releases unless a conflict is materialized while handling its metadata. Conflict detection relies on conventional atomic machine instructions in the Read-Modify-Write (RMW) class. Beyond improving scalability and performance, our solution can also avoid wasting clock cycles for spin-lock operations by threads that could in principle carry out their memory allocation/release in full concurrency. Thus, it is resilient to performance degradation—in face of concurrent accesses—independently of the current level of fragmentation of the handled memory blocks

    Software Model Checking with Explicit Scheduler and Symbolic Threads

    Full text link
    In many practical application domains, the software is organized into a set of threads, whose activation is exclusive and controlled by a cooperative scheduling policy: threads execute, without any interruption, until they either terminate or yield the control explicitly to the scheduler. The formal verification of such software poses significant challenges. On the one side, each thread may have infinite state space, and might call for abstraction. On the other side, the scheduling policy is often important for correctness, and an approach based on abstracting the scheduler may result in loss of precision and false positives. Unfortunately, the translation of the problem into a purely sequential software model checking problem turns out to be highly inefficient for the available technologies. We propose a software model checking technique that exploits the intrinsic structure of these programs. Each thread is translated into a separate sequential program and explored symbolically with lazy abstraction, while the overall verification is orchestrated by the direct execution of the scheduler. The approach is optimized by filtering the exploration of the scheduler with the integration of partial-order reduction. The technique, called ESST (Explicit Scheduler, Symbolic Threads) has been implemented and experimentally evaluated on a significant set of benchmarks. The results demonstrate that ESST technique is way more effective than software model checking applied to the sequentialized programs, and that partial-order reduction can lead to further performance improvements.Comment: 40 pages, 10 figures, accepted for publication in journal of logical methods in computer scienc

    Petrification: Software Model Checking for Programs with Dynamic Thread Management (Extended Version)

    Full text link
    We address the verification problem for concurrent program that dynamically create (fork) new threads or destroy (join) existing threads. We present a reduction to the verification problem for concurrent programs with a fixed number of threads. More precisely, we present petrification, a transformation from programs with dynamic thread management to an existing, Petri net-based formalism for programs with a fixed number of threads. Our approach is implemented in a software model checking tool for C programs that use the pthreads API.Comment: 32 pages, 8 figures, 2 tables, extended version of the paper which is to appear at VMCAI 202
    • …
    corecore