113,252 research outputs found

    Data Structures for Task-based Priority Scheduling

    Full text link
    Many task-parallel applications can benefit from attempting to execute tasks in a specific order, as for instance indicated by priorities associated with the tasks. We present three lock-free data structures for priority scheduling with different trade-offs on scalability and ordering guarantees. First we propose a basic extension to work-stealing that provides good scalability, but cannot provide any guarantees for task-ordering in-between threads. Next, we present a centralized priority data structure based on kk-fifo queues, which provides strong (but still relaxed with regard to a sequential specification) guarantees. The parameter kk allows to dynamically configure the trade-off between scalability and the required ordering guarantee. Third, and finally, we combine both data structures into a hybrid, kk-priority data structure, which provides scalability similar to the work-stealing based approach for larger kk, while giving strong ordering guarantees for smaller kk. We argue for using the hybrid data structure as the best compromise for generic, priority-based task-scheduling. We analyze the behavior and trade-offs of our data structures in the context of a simple parallelization of Dijkstra's single-source shortest path algorithm. Our theoretical analysis and simulations show that both the centralized and the hybrid kk-priority based data structures can give strong guarantees on the useful work performed by the parallel Dijkstra algorithm. We support our results with experimental evidence on an 80-core Intel Xeon system

    Aeronautical Engineering: A special bibliography with indexes, supplement 62

    Get PDF
    This bibliography lists 306 reports, articles, and other documents introduced into the NASA scientific and technical information system in September 1975

    Ion-Exchanged Glass Waveguide Technology: A Review

    Get PDF
    We review the history and current status of ion exchanged glass waveguide technology. The background of ion exchange in glass and key developments in the first years of research are briefly described. An overview of fabrication, characterization and modeling of waveguides is given and the most important waveguide devices and their applications are discussed. Ion exchanged waveguide technology has served as an available platform for studies of general waveguide properties, integrated optics structures and devices, as well as applications. It is also a commercial fabrication technology for both passive and active waveguide components
    • …
    corecore