3 research outputs found

    Using Lock Servers to Scale Real-Time Locking Protocols: Chasing Ever-Increasing Core Counts

    Get PDF
    During the past decade, parallelism-related issues have been at the forefront of real-time systems research due to the advent of multicore technologies. In the coming years, such issues will loom ever larger due to increasing core counts. Having more cores means a greater potential exists for platform capacity loss when the available parallelism cannot be fully exploited. In this paper, such capacity loss is considered in the context of real-time locking protocols. In this context, lock nesting becomes a key concern as it can result in transitive blocking chains that force tasks to execute sequentially unnecessarily. Such chains can be quite long on a larger machine. Contention-sensitive real-time locking protocols have been proposed as a means of "breaking" transitive blocking chains, but such protocols tend to have high overhead due to more complicated lock/unlock logic. To ease such overhead, the usage of lock servers is considered herein. In particular, four specific lock-server paradigms are proposed and many nuances concerning their deployment are explored. Experiments are presented that show that, by executing cache hot, lock servers can enable reductions in lock/unlock overhead of up to 86%. Such reductions make contention-sensitive protocols a viable approach in practice

    On Resource Sharing under Multiprocessor Semi-Partitioned Scheduling

    No full text
    Semi-partitioned scheduling has been the subject of interest compared to conventional global and partitioned scheduling algorithms for multiprocessors due to better utilization results. In Semi-partitioned scheduling most of tasks are assigned to fixed processors while a few number of tasks are split up and allocated to different processors. Various techniques have been proposed recently on different assigning protocols under semi-partitioned scheduling. Yet an appropriate synchronization mechanism for resource sharing in semi-partitioned scheduling have not been investigated. In this thesis we propose two methods for handling resource sharing under semi-partitioned scheduling on multiprocessor platforms. The main challenge is handling the resource requests of tasks that are split over multiple processors. The solutions include handling non-split tasks as well as split tasks over requests for shared resources in the system. In this thesis we investigate delays caused by blocking on resources. Furthermore, we perform the schedulability analysis for both algorithms. Finally we evaluate the performance of our proposed synchronization algorithms by means of experimental evaluations
    corecore