| Kenneth Mackenzie, John Kubiatawicz, Anant Agarwal, and Frans Kaashaek. Fugu: Implementing translation and protection in a multiuser, multimodel multiprocessor. Technical Memo MIT/LCS/TM-503, MIT Laboratory for Computer Science, Octo- ber 1994. |
....deadlock if a user overcommits network resources, for example, if a message handler sends more messages than the low level network layer can buffer. To prevent this type of deadlock, the system must extend the buffer space by copying messages to an overflow software queue in main memory [BCL 95,MKAK94] of the receiver. 67 Earlier systems aggressively buffer messages when the sender blocks [SFL 94, BCL 95] or after it has been blocked for a timeout interval [KA93] However, the extra copies this entails can potentially degrade performance [MFHW96] Blizzard, instead, uses a conservative ....
Kenneth Mackenzie, John Kubiatawicz, Anant Agarwal, and Frans Kaashaek. Fugu: Implementing translation and protection in a multiuser, multimodel multiprocessor. Technical Memo MIT/LCS/TM-503, MIT Laboratory for Computer Science, Octo- ber 1994.
....a large degree of multiprogramming. Fortunately, the Myricom Myrinet host interface provides a microprocessor that can be programmed to overcome this problem, as outlined below. The problem of limited buffering in the ULNIs can be solved by buffering network messages in the user s virtual space [72]. This provides large amounts of buffering limited only by the size of main memory (and swap space, which backs up the user virtual space) A ULNI with this capability, however, requires additional support for protection and address translation, which may require moderate to substantial changes to ....
....(see Section 3.6.1) Finally, there must be some mechanism for the rare case in which even the large amount of memory allocated for a CQ fills up. Three options exist. The first and the simplest option is to block the sender; however, this may lead to deadlock. Second, as proposed for MIT Fugu [72], the CNI device can interrupt the processor, causing it to allocate free virtual memory frames and drain the CQ. Third, the CQs themselves could grow dynamically. An easy way to achieve this would be organize the CQs as a linked list of fixed size buffers. If a CNI finds that the receive CQ is ....
[Article contains additional citation context not shown here]
Kenneth Mackenzie, John Kubiatowicz, Anant Agarwal, and Frans Kaashoek. Fugu: Implementing Translation and Protection in a Multiuser, Multimodel Multiprocessor. Technical Memo MIT/LCS/TM-503, MIT Laboratory for Computer Science, October 1994.
....to each application. The network will be timesliced along with the applications themselves, with a context switch on the processor accompanied by a context switch of the scheduled router. Direct access to the physical hardware would be mediated by some combination of hardware support (as in FUGU [47]) and operating system support (as is done in the Exokernel [22] The resulting multitasking system should provide similar gains to each process as could be found on a single tasking system, though for each additional task, the smaller amount of router memory available per task would cause extra ....
Kenneth Mackenzie, John Kubiatowicz, Anant Agarwal, and Frans Kaashoek. FUGU: Implementing translation and protection in a multiuser, multimodel multiprocessor. Technical Report LCS/TM-503, MIT, 1994.
....to preserve atomicity by default. Competitive algorithms may provide promising answers to these questions. Alewife does not fully implement Remote Queues. Selective interrupts are implemented at user level rather than system level, relying upon the user to implement the correct policy. FUGU [MKAK94] a multiprogrammed follow on to the Alewife machine, will implement Remote Queues at a hardware level. This will allow us to more fully explore the implications of Remote Queues on issues such as network congestion and multiprogrammed workloads. Chapter 9 Conclusion We conclude by summarizing ....
Kenneth Mackenzie, John Kubiatowicz, Anant Agarwal, and M. Frans Kaashoek. FUGU: Implementing Translation and Protection in a Multiuser, Multimodel Multiprocessor. In In Proceedings of the 1994 Workshop on Shared Memory Multiprocessors, Chicago, IL, April 1994. USC.
....interface unit, to interrupt Sparcle and have software take over some of its functions. For instance, this is used to handle corner cases in Alewife s cache coherence protocol [17] Alewife does not deal with issues of protection and sharing. These are investigated in a follow on project, FUGU [70, 69, 71]. Aside from adding small hardware extensions to Alewife, FUGU relies on Sparcle s fast interrupt and interrupt software to impose sharing protection. The constraints we faced are very different from those faced in Alewife and FUGU. For example, Sparcle has no on chip cache, and Alewife s CMMU ....
K. Mackenzie, J. Kubiatowicz, A. Agarwal, and M. F. Kaashoek. FUGU: Implementing Translation and Protection in a Multiuser, Multimodel Multiprocessor. Mit/lcs/tm-503, MIT Laboratory for Computer Science, Oct. 1994.
....policy can cause deadlock if a user overcommits network resources, for example, if a message handler sends more messages than the low level network layer can buffer. To prevent this type of deadlock, the system must extend the buffer space by copying messages to a software queue in main memory [5,22]. While not scalable, this approach more than suffices for moderate parallel machines. Earlier systems aggressively buffer messages when the sender blocks [33, 5] or after it has been blocked for a timeout interval [18] However, the extra copies this entails can potentially degrade performance ....
Kenneth Mackenzie, John Kubiatowicz, Anant Agarwal, and Frans Kaashoek. Fugu: Implementing Translation and Protection in a Multiuser, Multimodel Multiprocessor. Technical Memo MIT/LCS/TM-503, MIT Laboratory for Computer Science, October 1994.
....of multiprogramming of its ULNI to three (one system, two user) Alternatively, ULNIs could provide large memories to buffer messages; but this would drive up the cost of the ULNI. The problem of limited buffering in the ULNIs can be solved by buffering network messages in the user s virtual space [33]. This provides huge amounts of buffering limited only by the size of main memory (and perhaps swap space) which backs up the user virtual space. However, using user virtual space to buffer messages poses two problems. First, the ULNI must have access to the process identifier and ....
Kenneth Mackenzie, John Kubiatowicz, Anant Agarwal, and Frans Kaashoek. Fugu: Implementing Translation and Protection in a Multiuser, Multimodel Multiprocessor. Technical Memo MIT/LCS/TM-503, MIT Laboratory for Computer Science, October 1994.
....general address translation mechanism (e.g. a TLB) Finally, there must be some mechanism for the rare case in which even the large amount of memory allocated for a CQ fills up. The simplest option is to block the sender; however, this may lead to deadlock. Alternatively, as proposed for MIT Fugu [32], the CNI device can interrupt the processor, causing it to allocate free virtual memory frames and drain the CQ. Making main memory the home is generally infeasible with a coherent I O bus. Coherent I O buses [18] allow memory residing on the I O bus to be cached by the processor. However, they ....
.... Possible solutions range from disallowing multiprogramming [15] to taking special actions at context switch time (to context switch the NI and network state) 44] to optimistically assuming a message is destined for the current process (reverting to operating system buffering if it is not) [32]. Furthermore, these solutions do not easily generalize to symmetric multiprocessing (SMP) nodes, where multiple processes may concurrently access the NI. CNIs vastly simplify the multiprogramming problem by using memory based queues as the interface abstraction, rather than memory mapped device ....
[Article contains additional citation context not shown here]
Kenneth Mackenzie, John Kubiatowicz, Anant Agarwal, and Frans Kaashoek. Fugu: Implementing Translation and Protection in a Multiuser, Multimodel Multiprocessor. Technical Memo MIT/LCS/TM-503, MIT Laboratory for Computer Science, October 1994.
....messages from within message handlers. In cases where these sends overflow the network, the runtime system buffers message data in the user s virtual memory. A truly errant process will be terminated when it exhausts the memory available to it. A similar approach is taken in the Fugu system [MKAK94] In addition to the modified Active Messages model, Tempest includes a separate messaging interface for bulk data transfer. This alternate interface complements Tempest s Active Messages by providing asynchronous, high bandwidth memory to memory communication for large amounts of data. Users set ....
Kenneth Mackenzie, John Kubiatowicz, Anant Agarwal, and Frans Kaashoek. Fugu: Implementing translation and protection in a multiuser, multimodel multiprocessor. Technical Report TM-503, MIT LCS, October 1994.
....when serving pages while the CPU intensive job is running. 38 6 Chapter 1 Introduction The exokernel approach to operating system design has demonstrated the potential for excellent performance gains through enhanced flexibility in three experimental systems [4, 7, 6]. However, each of these systems was designed as an exokernel from its beginning. Outside of academia, if the developers of a widely used, mature operating system wished to employ exokernel ideas, a complete redesign and rewrite would normally be unthinkable. This thesis explores how the ....
K. Mackenzie, J. Kubiatowicz, A. Agarwal, and M.F. Kaashoek. FUGU: implementing translation and protection in a multiuser, multimodel multiprocessor. Technical Memorandum MIT/LCS/TM503, MIT, October 1994.
....4 Status and Experimental Methodology We have implemented two software systems that follow the exokernel architecture: Aegis, an exokernel, and ExOS, a library operating system. Another prototype exokernel, Glaze, is being built for an experimental SPARC based shared memory multiprocessor [35], along with PhOS, a parallel operating system library. Aegis and ExOS are implemented on MIPS based DECstations. Aegis exports the processor, physical memory, TLB, exceptions, and interrupts. In addition, it securely exports the network interface using a packet filter system that employs dynamic ....
K. Mackenzie, J. Kubiatowicz, A. Agarwal, and M. F. Kaashoek. FUGU: Implementing translation and protection in a multiuser, multimodel multiprocessor. Technical Memorandum MIT/LCS/TM503, MIT, October 1994.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC