A software system supporting multiple event-drlven processes concurrently on a small process control computer is described. Each application can be programmed and tested independently. An implementation of the system,...
详细信息
The generating function approach for analysing queueing systems has a long-standing tradition. One of the highlights is the seminal paper by Kingman [Ann. Math. Statist., 32(1961). pp. 1314-1323] on the shortest-queue...
详细信息
The generating function approach for analysing queueing systems has a long-standing tradition. One of the highlights is the seminal paper by Kingman [Ann. Math. Statist., 32(1961). pp. 1314-1323] on the shortest-queue problem, where the author shows that the equilibrium probabilities p(m,n) of the queue lengths can be written as an infinite sum of products of powers. The same approach is used by Hofri [Internat. J. Computer and Information Sci., 7 (1978), pp. 121-1551 to prove that, for a multiprogramming model with two queues, the boundary probability p(0,j) can be expressed as an infinite sum of powers. This paper shows that the latter representation does not always hold, which implies that the multiprogramming problem is essentially more complicated than the shortest-queue problem. However, it appears that the generating function approach is very well suited to show when such a representation is available and when it is not.
A direct-mapped cache takes less time for accessing data than a set-associative cache because the time needed for selecting a cache line among the set is not necessary. The hit ratio of a direct-mapped cache, however,...
详细信息
A direct-mapped cache takes less time for accessing data than a set-associative cache because the time needed for selecting a cache line among the set is not necessary. The hit ratio of a direct-mapped cache, however, is lower due to the conflict misses caused by mapping multiple addresses to the same cache line. Addressing cache memory by virtual addresses reduces the cache access time by eliminating the time needed for address translation. The synonym problem in virtual cache necessitates an additional held in the cache tag to denote the process to which cache line belongs. In this paper, we propose a new virtual cache architecture whose average access time is almost the same as the direct-mapped cache while the hit ratio is the same as the set-associative caches. A victim for cache replacement is selected from those that belong to a process which is most remote from being scheduled. The entire cache memory is divided into n banks, and each process is assigned to a bank. Then, each process runs on the assigned bank, and the cache behaves like a direct-mapped cache. Trace-driven simulations confirm that the new scheme removes almost as many conflict misses as does the set-associative cache, while cache access time is similar to a direct-mapped cache.
Low-power microcontrollers lack some of the hardware features and memory resources that enable multiprogrammable systems. Accordingly, microcontroller-based operating systems have not provided important features like ...
详细信息
ISBN:
(纸本)9781450350853
Low-power microcontrollers lack some of the hardware features and memory resources that enable multiprogrammable systems. Accordingly, microcontroller-based operating systems have not provided important features like fault isolation, dynamic memory allocation, and flexible concurrency. However, an emerging class of embedded applications are software platforms, rather than single purpose devices, and need these multiprogramming features. Tock, a new operating system for low-power platforms, takes advantage of limited hardware-protection mechanisms as well as the type-safety features of the Rust programming language to provide a multiprogramming environment for microcontrollers. Tock isolates software faults, provides memory protection, and efficiently manages memory for dynamic application workloads written in any language. It achieves this while retaining the dependability requirements of long-running applications.
Many solutions have been proposed to the problem of multiprogramming a multiprocessor. However, each has limited applicability or fails to address an important source of overhead. In addition, there has been little ex...
详细信息
In a general-purpose computing system, several parallel applications run simultaneously on the same platform. Even if each application is highly tuned for that specific platform, additional performance issues are aris...
详细信息
In a general-purpose computing system, several parallel applications run simultaneously on the same platform. Even if each application is highly tuned for that specific platform, additional performance issues are arising in such a dynamic environment in which multiple applications compete for the resources. Different scheduling and resource management techniques have been proposed either at operating system or user level to improve the performance of concurrent workloads. In this paper, we propose a task-based strategy called "Steal Locally, Share Globally" implemented in the runtime of our parallel programming model GPRM (Glasgow Parallel Reduction Machine). We have chosen a state-of-the-art manycore parallel machine, the Intel Xeon Phi, to compare GPRM with some well-known parallel programming models, OpenMP, Intel Cilk Plus and Intel TBB, in both single-programming and multiprogramming scenarios. We show that GPRM not only performs well for single workloads, but also outperforms the other models for multiprogramming workloads. There are three considerations regarding our task-based scheme: (i) It is implemented inside the parallel framework, not as a separate layer;(ii) It improves the performance without the need to change the number of threads for each application (iii) It can be further tuned and improved, not only for the GPRM applications, but for other equivalent parallel programming models.
Object-based sequential programming has had a major impact on software engineering. However, object-based concurrent programming remains elusive as an effective programming tool. The class of applications that will be...
详细信息
Object-based sequential programming has had a major impact on software engineering. However, object-based concurrent programming remains elusive as an effective programming tool. The class of applications that will be implemented on future high-bandwidth networks of processors will be significantly more ambitious than the current applications (which are mostly involved with transmissions of digital data and images), and object-based concurrent programming has the potential to simplify designs of such applications. Many of the programming concepts developed for databases, object-oriented programming and designs of reactive systems can be unified into a compact model of concurrent programs that can serve as the foundation for designing these future applications. We propose a model of multiprograms and a discipline of programming that addresses the issues of reasoning (e.g., understanding) and efficient implementation. The major point of departure is the disentanglement of sequential and multiprogramming features. We propose a sparse model of multiprograms that distinguishes these two forms of computations and allows their disciplined interactions.
This paper analyzes some features of the Helios distributed operating system. The study is made in the framework of the VCP (Virtual Class Processor) project. VCP is a software architecture, which makes the implementa...
详细信息
This paper analyzes some features of the Helios distributed operating system. The study is made in the framework of the VCP (Virtual Class Processor) project. VCP is a software architecture, which makes the implementation of Concurrent Object-Oriented Languages on multicomputers easier. A VCP prototype is being developed on a Transputer-based multicomputer: the Multicluster-2 by Parsytec. The Helios system has been chosen to implement VCP. The heavy use of message-passing and multiprogramming facilities required by the VCP architecture, has led us to the valuation of the available facilities under Helios. The results of a quantitative analysis are examined: performances of communication at kernel level, the cost of process management, the method invocation elapsed time. A qualitative analysis enables to estimate: the development interface of Helios, the possibilities of message-passing, the questions of communication reliability and the interest of the notion of task.
In this work, we present an OpenMP implementation suitable for multiprogrammed environments on Intel-based SMP systems. This implementation consists of a runtime system and a resource manager, while we use the NanosCo...
详细信息
In this work, we present an OpenMP implementation suitable for multiprogrammed environments on Intel-based SMP systems. This implementation consists of a runtime system and a resource manager, while we use the NanosCompiler to transform OpenMP-coded applications into code with calls to our runtime system. The resource manager acts as the operating system scheduler for the applications built with our runtime system. It executes a custom made scheduling policy to distribute the available physical processors to the active applications. The runtime system cooperates with the resource manager in order to adapt each application's generated parallelism to the number of processors allocated to it, according to the resource manager scheduling policy. We use the OpenMP version of the NAS Parallel Benchmark suite in order to evaluate the performance of our implementation. In our experiments we compare the performance of our implementation with that of a commercial OpenMP implementation. The comparison proves that our approach performs better both on a dedicated and on a heavily multiprogrammed environment.
multiprogramming may be defined as the execution of several computer programs concurrently, under a time-sharing mode, with the aim of keeping all independently operable computer components continuously busy. The bene...
详细信息
暂无评论