Kernel-kernel communication in a shared-memory multiprocessor

Eliseu M. Chaves, Prakash Ch Das, Thomas J. Leblanc, Brian D. Marsh, Michael L. Scott

Research output: Contribution to journalArticle

9 Citations (Scopus)

Abstract

In the standard kernel organization on a bus-based multiprocessor, all processors share the code and data of the operating system; explicit synchronization is used to control access to kernel data structures. Distributed-memory multicomputers use an alternative approach, in which each instance of the kernel performs local operations directly and uses remote invocation to perform remote operations. Either approach to interkernel communication can be used in a large-scale shared-memory multiprocessor. In the paper we discuss the issues and architectural features that must be considered when choosing between remote memory access and remote invocation. We focus in particular on experience with the Psyche multiprocessor operating system on the BBN Butterfly Plus. We find that the Butterfly architecture is biased towards the use of remote invocation for kernel operations that perform a significant number of memory references, and that current architectural trends are likely to increase this bias in future machines. This conclusion suggests that straightforward parallelization of existing kernels (e.g. by using semaphores to protect shared data) is unlikely in the future to yield acceptable performance. We note, however, that remote memory access is useful for small, frequently-executed operations, and is likely to remain so.

Original languageEnglish (US)
Pages (from-to)171-191
Number of pages21
JournalConcurrency Practice and Experience
Volume5
Issue number3
StatePublished - May 1993
Externally publishedYes

Fingerprint

Shared-memory multiprocessors
kernel
Data storage equipment
Communication
Operating Systems
Likely
Multicomputers
Multiprocessor Systems
Distributed Memory
Multiprocessor
Access Control
Access control
Parallelization
Biased
Data structures
Data Structures
Synchronization
Alternatives
Architecture

ASJC Scopus subject areas

  • Engineering(all)

Cite this

Chaves, E. M., Das, P. C., Leblanc, T. J., Marsh, B. D., & Scott, M. L. (1993). Kernel-kernel communication in a shared-memory multiprocessor. Concurrency Practice and Experience, 5(3), 171-191.

Kernel-kernel communication in a shared-memory multiprocessor. / Chaves, Eliseu M.; Das, Prakash Ch; Leblanc, Thomas J.; Marsh, Brian D.; Scott, Michael L.

In: Concurrency Practice and Experience, Vol. 5, No. 3, 05.1993, p. 171-191.

Research output: Contribution to journalArticle

Chaves, EM, Das, PC, Leblanc, TJ, Marsh, BD & Scott, ML 1993, 'Kernel-kernel communication in a shared-memory multiprocessor', Concurrency Practice and Experience, vol. 5, no. 3, pp. 171-191.
Chaves EM, Das PC, Leblanc TJ, Marsh BD, Scott ML. Kernel-kernel communication in a shared-memory multiprocessor. Concurrency Practice and Experience. 1993 May;5(3):171-191.
Chaves, Eliseu M. ; Das, Prakash Ch ; Leblanc, Thomas J. ; Marsh, Brian D. ; Scott, Michael L. / Kernel-kernel communication in a shared-memory multiprocessor. In: Concurrency Practice and Experience. 1993 ; Vol. 5, No. 3. pp. 171-191.
@article{ef22d3f36b804d268bf1057dbaa539a8,
title = "Kernel-kernel communication in a shared-memory multiprocessor",
abstract = "In the standard kernel organization on a bus-based multiprocessor, all processors share the code and data of the operating system; explicit synchronization is used to control access to kernel data structures. Distributed-memory multicomputers use an alternative approach, in which each instance of the kernel performs local operations directly and uses remote invocation to perform remote operations. Either approach to interkernel communication can be used in a large-scale shared-memory multiprocessor. In the paper we discuss the issues and architectural features that must be considered when choosing between remote memory access and remote invocation. We focus in particular on experience with the Psyche multiprocessor operating system on the BBN Butterfly Plus. We find that the Butterfly architecture is biased towards the use of remote invocation for kernel operations that perform a significant number of memory references, and that current architectural trends are likely to increase this bias in future machines. This conclusion suggests that straightforward parallelization of existing kernels (e.g. by using semaphores to protect shared data) is unlikely in the future to yield acceptable performance. We note, however, that remote memory access is useful for small, frequently-executed operations, and is likely to remain so.",
author = "Chaves, {Eliseu M.} and Das, {Prakash Ch} and Leblanc, {Thomas J.} and Marsh, {Brian D.} and Scott, {Michael L.}",
year = "1993",
month = "5",
language = "English (US)",
volume = "5",
pages = "171--191",
journal = "Concurrency Computation Practice and Experience",
issn = "1532-0626",
publisher = "John Wiley and Sons Ltd",
number = "3",

}

TY - JOUR

T1 - Kernel-kernel communication in a shared-memory multiprocessor

AU - Chaves, Eliseu M.

AU - Das, Prakash Ch

AU - Leblanc, Thomas J.

AU - Marsh, Brian D.

AU - Scott, Michael L.

PY - 1993/5

Y1 - 1993/5

N2 - In the standard kernel organization on a bus-based multiprocessor, all processors share the code and data of the operating system; explicit synchronization is used to control access to kernel data structures. Distributed-memory multicomputers use an alternative approach, in which each instance of the kernel performs local operations directly and uses remote invocation to perform remote operations. Either approach to interkernel communication can be used in a large-scale shared-memory multiprocessor. In the paper we discuss the issues and architectural features that must be considered when choosing between remote memory access and remote invocation. We focus in particular on experience with the Psyche multiprocessor operating system on the BBN Butterfly Plus. We find that the Butterfly architecture is biased towards the use of remote invocation for kernel operations that perform a significant number of memory references, and that current architectural trends are likely to increase this bias in future machines. This conclusion suggests that straightforward parallelization of existing kernels (e.g. by using semaphores to protect shared data) is unlikely in the future to yield acceptable performance. We note, however, that remote memory access is useful for small, frequently-executed operations, and is likely to remain so.

AB - In the standard kernel organization on a bus-based multiprocessor, all processors share the code and data of the operating system; explicit synchronization is used to control access to kernel data structures. Distributed-memory multicomputers use an alternative approach, in which each instance of the kernel performs local operations directly and uses remote invocation to perform remote operations. Either approach to interkernel communication can be used in a large-scale shared-memory multiprocessor. In the paper we discuss the issues and architectural features that must be considered when choosing between remote memory access and remote invocation. We focus in particular on experience with the Psyche multiprocessor operating system on the BBN Butterfly Plus. We find that the Butterfly architecture is biased towards the use of remote invocation for kernel operations that perform a significant number of memory references, and that current architectural trends are likely to increase this bias in future machines. This conclusion suggests that straightforward parallelization of existing kernels (e.g. by using semaphores to protect shared data) is unlikely in the future to yield acceptable performance. We note, however, that remote memory access is useful for small, frequently-executed operations, and is likely to remain so.

UR - http://www.scopus.com/inward/record.url?scp=0027595798&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=0027595798&partnerID=8YFLogxK

M3 - Article

AN - SCOPUS:0027595798

VL - 5

SP - 171

EP - 191

JO - Concurrency Computation Practice and Experience

JF - Concurrency Computation Practice and Experience

SN - 1532-0626

IS - 3

ER -