Compliant Thread Scheduling
نویسنده
چکیده
Compliance provides a new methodology in constructing software architectures, which accommodate, and are therefore compliant to, particular application needs. The fundamental concept behind compliance is that by enabling higher layers in the software architecture to make policy decisions, the application support system is able to evolve with application needs. It has been conjectured that the benefits of the compliant software architecture will include ease of system evolution, a reduction in complexity, gains in flexibility and increased application performance. The compliant software architecture has been examined in several investigations, all of which have been done in the first instantiation of the compliant software architecture, the ProcessBase system. These investigations successfully demonstrate the evolutionary potential of the compliant software architecture, through the accommodation of application needs. However, the purported increase in application performance, together with a detailed examination of the adequacy of the compliant software architecture in supporting the needs of a real application have yet to be established. Hence, the primary objective of this study is the provision of a quantitative and qualitative analysis, which determines the efficiency and flexibility that the compliant software architecture provides to applications. To facilitate this analysis, a secondary objective of this study is the development of compliant thread scheduling functionality within the existing ProcessBase system. This project provides the first detailed analysis of compliance applied to a real and existing application. This analysis shows that the compliant software architecture imposes no performance overheads when specifying the default policies defined within the system. Further, by providing application-specific scheduling policies, applications are able to significantly improve their performance. These results combined with the detailed qualitative analysis of compliance, substantiate the postulated benefits of performance and flexibility that the compliant software architecture can bring to applications.
منابع مشابه
Scheduling Distributable Real-Time Threads in Middleware
We present the Tempus real-time middleware. Tempus supports Real-Time CORBA 2.0’s distributable threads (DTs) as an end-to-end programming abstraction for distributed real-time systems. DTs in Tempus can have time constraints, including time/utility functions (TUFs), can have resource constraints, particularly mutual exclusion, and can be scheduled according to utility accrual (UA) disciplines....
متن کاملAn Interrupt-Driven Work-Sharing For-Loop Scheduler
In this paper we present a parallel for-loop scheduler which is based on work-stealing principles but runs under a completely cooperative scheme. POSIX signals are used by idle threads to interrupt left-behind workers, which in turn decide what portion of their workload can be given to the requester. We call this scheme Interrupt-DrivenWork-Sharing (IDWS). This article describes how IDWS works,...
متن کاملSimulation Study of Multithreaded Virtual Processor
This paper proposes the Multithreaded Virtual Processor (MVP) architecture model as a means of integrating the multithreaded programming paradigm and a modern superscalar processor with support for fast context switching and thread scheduling. In order to validate our idea, a simulator was developed using a POSIX compliant Pthreads package and a generic superscalar simulator called SimpleScalar...
متن کاملA Fair Thread-Aware Memory Scheduling Algorithm for Chip Multiprocessor
In Chip multiprocessor (CMP) systems, DRAM memory is a critical resource shared among cores. Scheduled by one single memory controller, memory access requests from different cores may interfere with each other. This interference causes extra waiting time for threads and leads to negligible overall system performance loss. In conventional thread-unaware memory scheduling patterns, different thre...
متن کاملRecent Progress in Multiprocessor Thread Scheduling
In this paper we will discuss progress in the area of thread scheduling for multiprocessors, including systems which are Chip-MultiProcessors (CMP), can perform Simultaneous MultiThreading (SMT), and/or support multiple threads to execute in parallel. The reviewed papers approach thread scheduling from the aspects of resource utilization, thread priority, Operating System (OS) effects, and inte...
متن کامل