Share to: share facebook share twitter share wa share telegram print page

Distributed shared memory

In computer science, distributed shared memory (DSM) is a form of memory architecture where physically separated memories can be addressed as a single shared address space. The term "shared" does not mean that there is a single centralized memory, but that the address space is shared—i.e., the same physical address on two processors refers to the same location in memory.[1]: 201  Distributed global address space (DGAS), is a similar term for a wide class of software and hardware implementations, in which each node of a cluster has access to shared memory in addition to each node's private (i.e., not shared) memory.

Overview

A distributed-memory system, often called a multicomputer, consists of multiple independent processing nodes with local memory modules which is connected by a general interconnection network. Software DSM systems can be implemented in an operating system, or as a programming library and can be thought of as extensions of the underlying virtual memory architecture. When implemented in the operating system, such systems are transparent to the developer; which means that the underlying distributed memory is completely hidden from the users. In contrast, software DSM systems implemented at the library or language level are not transparent and developers usually have to program them differently. However, these systems offer a more portable approach to DSM system implementations. A DSM system implements the shared-memory model on a physically distributed memory system.

DSM can be achieved via software as well as hardware. Hardware examples include cache coherence circuits and network interface controllers. There are three ways of implementing DSM:

  • Page-based approach using virtual memory
  • Shared-variable approach using routines to access shared variables
  • Object-based approach, ideally accessing shared data through object-oriented discipline

Advantages

  • Scales well with a large number of nodes
  • Message passing is hidden
  • Can handle complex and large databases without replication or sending the data to processes
  • Generally cheaper than using a multiprocessor system
  • Provides large virtual memory space
  • Programs are more portable due to common programming interfaces
  • Shield programmers from sending or receiving primitives

Disadvantages

  • Generally slower to access than non-distributed shared memory
  • Must provide additional protection against simultaneous accesses to shared data
  • May incur a performance penalty
  • Little programmer control over actual messages being generated
  • Programmers need to understand consistency models to write correct programs

Comparison with message passing

Message passing Distributed shared memory
Variables have to be marshalled Variables are shared directly
Cost of communication is obvious Cost of communication is invisible
Processes are protected by having private address space Processes could cause error by altering data
Processes should execute at the same time Executing the processes may happen with non-overlapping lifetimes

Software DSM systems also have the flexibility to organize the shared memory region in different ways. The page based approach organizes shared memory into pages of fixed size. In contrast, the object based approach organizes the shared memory region as an abstract space for storing shareable objects of variable sizes. Another commonly seen implementation uses a tuple space, in which the unit of sharing is a tuple.

Shared memory architecture may involve separating memory into shared parts distributed amongst nodes and main memory; or distributing all memory between nodes. A coherence protocol, chosen in accordance with a consistency model, maintains memory coherence.

Directory memory coherence

Memory coherence is necessary such that the system which organizes the DSM is able to track and maintain the state of data blocks in nodes across the memories comprising the system. A directory is one such mechanism which maintains the state of cache blocks moving around the system.

States

State diagram of a block of memory in a DSM. A block is "owned" if one of the nodes has the block in state EM.
State diagram of a block of memory in a DSM. A block is "owned" if one of the nodes has the block in state EM.

A basic DSM will track at least three states among nodes for any given block in the directory.[2] There will be some state to dictate the block as uncached (U), a state to dictate a block as exclusively owned or modified owned (EM), and a state to dictate a block as shared (S). As blocks come into the directory organization, they will transition from U to EM (ownership state) in the initial node. The state can transition to S when other nodes begin reading the block.

There are two primary methods for allowing the system to track where blocks are cached and in what condition across each node. Home-centric request-response uses the home to service requests and drive states, whereas requester-centric allows each node to drive and manage its own requests through the home.

Home-centric request and response

In a home-centric system, the DSM will avoid having to handle request-response races between nodes by allowing only one transaction to occur at a time until the home node has decided that the transaction is finished—usually when the home has received every responding processor's response to the request. An example of this is Intel's QPI home-source mode.[3] The advantages of this approach are that it's simple to implement but its request-response strategy is slow and buffered due to the home node's limitations.

Requester-centric request and response

In a requester-centric system, the DSM will allow nodes to talk at will to each other through the home. This means that multiple nodes can attempt to start a transaction, but this requires additional considerations to ensure coherence. For example: when one node is processing a block, if it receives a request for that block from another node it will send a NAck (Negative Acknowledgement) to tell the initiator that the processing node can't fulfill that request right away. An example of this is Intel's QPI snoop-source mode.[3] This approach is fast but it does not naturally prevent race conditions and generates more bus traffic.

Consistency models

The DSM must follow certain rules to maintain consistency over how read and write order is viewed among nodes, called the system's consistency model.

Suppose we have n processes and Mi memory operations for each process i, and that all the operations are executed sequentially. We can conclude that (M1 + M2 + … + Mn)!/(M1! M2!… Mn!) are possible interleavings of the operations. The issue with this conclusion is determining the correctness of the interleaved operations. Memory coherence for DSM defines which interleavings are permitted.

Sequential invocations and responses in DSM
Sequential invocations and responses in DSM

Replication

There are two types of replication Algorithms. Read replication and Write replication. In Read replication multiple nodes can read at the same time but only one node can write. In Write replication multiple nodes can read and write at the same time. The write requests are handled by a sequencer. Replication of shared data in general tends to:

  • Reduce network traffic
  • Promote increased parallelism
  • Result in fewer page faults

However, preserving coherence and consistency may become more challenging.

Release and entry consistency

  • Release consistency: when a process exits a critical section, new values of the variables are propagated to all sites.
  • Entry consistency: when a process enters a critical section, it will automatically update the values of the shared variables.
    • View-based Consistency: it is a variant of Entry Consistency, except the shared variables of a critical section are automatically detected by the system. An implementation of view-based consistency is VODCA Archived 2016-02-15 at the Wayback Machine which has comparable performance to MPI on cluster computers.

Examples

See also

References

  1. ^ Patterson, David A.; Hennessy, John L. (2006). Computer Architecture: A Quantitative Approach (4th ed.). Burlington, Massachusetts: Morgan Kaufmann. ISBN 978-01-2370490-0.
  2. ^ Solihin, Yan (2015). Fundamentals of Parallel Multicore Architecture. Boca Raton, Florida: Chapman and Hall/CRC. pp. 339–340. ISBN 9781482211184.
  3. ^ a b Sorin, Daniel J.; Hill, Mark D.; Wood, David A. (2011). A Primer on Memory Consistency and Cache Coherence. Morgan & Claypool. p. 174. ISBN 978-16-0845564-5.

Read other articles:

Japanese neologism Satori in Japanese Satori generation (さとり世代, Satori Sedai) is a Japanese language neologism used to describe young Japanese who have seemingly achieved the Buddhist enlightened state free from material desires but who have in reality given up ambition and hope due to macro-economic trends.[1] The term was coined around 2010.[2] The Satori generation are not interested in earning money, career advancement, and conspicuous consumption, or even travel...

Belgian actor, screenwriter and film director Jacques FeyderFeyder in 1925BornJacques Léon Louis Frédérix(1885-07-21)21 July 1885Ixelles, BelgiumDied24 May 1948(1948-05-24) (aged 62)Prangins, SwitzerlandSpouseFrançoise Rosay (1917–1948, his death) Jacques Feyder (French: [fɛ.dɛʁ]; 21 July 1885 – 24 May 1948) was a Belgian actor, screenwriter and film director who worked principally in France, but also in the US, Britain and Germany. He was a director of silent film...

AlmetievskАльме́тьевск (em russo)Әлмәт (em tártaro)   Cidade e município   Símbolos Brasão de armas Localização AlmetievskLocalização de Almetievsk no Rússia AlmetievskLocalização de Almetievsk na Tartaristão Coordenadas 54° 54' N 52° 18' E País  Rússia República Tartaristão[1] Características geográficas Área total 41 km² População total (2010) [2] 142 143 hab. Densidade auto hab./km² Fuso horário MSK ...

Lucila Venegas Montes Datos personalesNacimiento Guadalajara, México23 de abril de 1981 (42 años)Nacionalidad(es) MexicanaAltura 1,60Peso 56 kilosCarreraDeporte FútbolFunción Árbitro de fútbolCategoría FIFAFecha debut 2005[editar datos en Wikidata] Lucila Venegas Montes (Guadalajara, México - 23 de abril de 1981) es una árbitra de fútbol mexicana internacional desde el 2008.[1]​ Partidos internacionales A continuación se listan los partidos internacionales dond...

Town in Turkey This article is about the town of Side on the Mediterranean coast of Turkey. For the town of ancient Caria, see Side (Caria). For the town of ancient Pontus, see Side (Pontus). SideΣίδηThe Temple of Apollo is located at the end of Side's peninsula.Shown within TurkeyLocationAntalya Province, TurkeyRegionPamphyliaCoordinates36°46′00″N 31°23′20″E / 36.76667°N 31.38889°E / 36.76667; 31.38889TypeSettlementHistoryFounded7th century BCECultures...

Economy of EthiopiaAddis Ababa, the financial centre of EthiopiaCurrencyBirr (ETB, ብር)Fiscal year7 – 8 JulyTrade organisationsAU, AfCFTA, COMESA, IGAD, WTO (observer), G24Country group Developing/Emerging[1] Low-income economy[2] StatisticsPopulation 124,937,259 (2023)[3]GDP $156.1 billion (nominal, 2023 est.)[4] $393.85 billion (PPP, 2023 est.)[4] GDP rank 63rd (nominal, 2018) 62nd (PPP, 2018) GDP growth 7.7% (2018) 9.0% (2019) 6.1%...

本條目存在以下問題,請協助改善本條目或在討論頁針對議題發表看法。 此條目需要編修,以確保文法、用詞、语气、格式、標點等使用恰当。 (2021年9月13日)請按照校對指引,幫助编辑這個條目。(幫助、討論) 此條目含有過多、重複或不必要的内部链接。 (2021年9月13日)請根据格式指引,移除重复、標題链接以及任何与内容无关的链接。 此條目的引用需要进行清理,使其...

APOL6 Ідентифікатори Символи APOL6, APOL-VI, APOLVI, apolipoprotein L6 Зовнішні ІД OMIM: 607256 MGI: 1919189 HomoloGene: 49940 GeneCards: APOL6 Онтологія гена Молекулярна функція • lipid binding Клітинна компонента • extracellular region• цитоплазма Біологічний процес • lipoprotein metabolic process• lipid transport Джерела:Amigo / QuickGOШаблон експресії Б

South African judge For the South African rugby union player, see Sandile Ngcobo (rugby union). The HonourableSandile NgcoboChief Justice of South AfricaIn office12 October 2009 – 12 August 2011Appointed byPresident Jacob ZumaDeputyDikgang MosenekePreceded byPius LangaSucceeded byMogoeng MogoengJustice of the Constitutional Court of South AfricaIn office1999 – 12 August 2011Appointed byPresident Nelson Mandela Personal detailsBorn (1953-03-01) 1 March 1953 (age 70)D...

この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方)出典検索?: 客車 – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2019年8月) 国鉄時代の客車列車の一例旧型客車と呼ばれる、荷物

لويس كوبيلا (بالإسبانية: Luis Cubilla)‏    معلومات شخصية الميلاد 28 مارس 1940(1940-03-28)بايساندو  الوفاة 3 مارس 2013 (عن عمر ناهز 72 عاماً)أسونسيون  سبب الوفاة سرطان المعدة  الطول 170 سنتيمتر  مركز اللعب مهاجم الجنسية الأوروغواي  مسيرة الشباب سنوات فريق Colón de Paysandú المسيرة...

Daftar keuskupan di Tanah Suci adalah sebuah daftar yang memuat dan menjabarkan pembagian terhadap wilayah administratif Gereja Katolik Roma yang dipimpin oleh seorang uskup ataupun ordinaris di Tanah Suci. Tanah Suci mencakup negara Israel, Negara Palestina, Siprus, dan Yordania. Konferensi para uskup Tanah Suci bergabung dalam Majelis Ordinaris Katolik Tanah Suci.[1] Saat ini terdapat 16 buah keuskupan, di mana 3 merupakan keuskupan agung dan lainnya merupakan keuskupan sufragan. Da...

1976 film by George Cukor The Blue BirdTheatrical film posterDirected byGeorge CukorWritten byHugh WhitemoreAlfred HayesAleksei KaplerLyrics by Tony HarrisonBased on a play by Maurice MaeterlinckProduced byPaul MaslanskyStarringElizabeth TaylorJane FondaCicely TysonWill GeerTodd LookinlandNadezhda PavlovaAva GardnerCinematographyJonas GriciusFreddie YoungEdited byStanford C. AllenTatyana ShapiroMusic byIrwin KostalAndrey PetrovProductioncompanyLenfilmDistributed byTwentieth Century-Fox Film C...

Сен-Венсан-сюр-л'ІльSaint-Vincent-sur-l'Isle Країна  Франція Регіон Нова Аквітанія  Департамент Дордонь  Округ Нонтрон Кантон Савіньяк-лез-Егліз Код INSEE 24513 Поштові індекси 24420 Координати 45°14′41″ пн. ш. 0°53′45″ сх. д.H G O Висота 102 - 218 м.н.р.м. Площа 9,98 км² Населення 313 (01-2...

Микита Кацалапов Кацалапов Микита Геннадійович Персональні дані Громадянство  РосіяДата народження 10 липня 1991(1991-07-10) (32 роки)Місце народження Москва, СРСРЗріст 180 смПартнер Вікторія СініцинаКолишні партнери Олена ІльїнихТренер Олександр Жулін Нагороди Орден Дру...

Song cycle by Luciano Berio Composer Luciano Berio in the 1970s Folk Songs is a song cycle by the Italian composer Luciano Berio composed in 1964. It consists of arrangements of folk music from various countries and other songs, forming a tribute to the extraordinary artistry of the American singer Cathy Berberian, a specialist in Berio's music. It is scored for voice, flute (doubling on piccolo), clarinet, harp, viola, cello, and percussion (two players).[1] The composer arranged it ...

Species of emperor moth Mopane worm Caterpillar in a mopane tree, and male imago (note the feathered antennae) Scientific classification Domain: Eukaryota Kingdom: Animalia Phylum: Arthropoda Class: Insecta Order: Lepidoptera Family: Saturniidae Genus: Gonimbrasia Species: G. belina Binomial name Gonimbrasia belinaWestwood, 1849 Gonimbrasia belina is a species of emperor moth which is native to the warmer parts of southern Africa. Its large edible caterpillar, known as the mopane worm, m...

Hindu temple in Tamil Nadu, India Mayuranathaswamy templeGopura of the Mayuranathaswamy TempleReligionAffiliationHinduismDistrictMayiladuthuraiDeityMayuranathaswamy (Shiva)LocationLocationMayiladuthuraiStateTamil NaduCountryIndiaShown within Tamil NaduGeographic coordinates11°5′44″N 79°39′22″E / 11.09556°N 79.65611°E / 11.09556; 79.65611ArchitectureTypeDravidian Mayuranathaswamy Temple, Mayiladuthurai or Mayuranathar Temple is a Hindu temple in the town of ...

2021 Indian Tamil-language sports action drama masala film by N. Rajasekar Kalathil SanthippomTheatrical release posterDirected byN. RajasekarWritten byN. RajasekarProduced byR. B. ChoudaryStarringJiivaArulnithiManjima MohanPriya Bhavani ShankarCinematographyAbinandhan RamanujamEdited byDinesh PonrajMusic byYuvan Shankar RajaProductioncompanySuper Good Films (P) LtdRelease date 5 February 2021 (2021-02-05) Running time132 minutesCountryIndiaLanguageTamil Kalathil Santhippom (tr...

American breakfast television program For the Art Pepper album, see The Early Show (album). The Early ShowGenreNews programPresented by(see section)Theme music composerChris Bowman (1999–2002)Sting (2002–2006)James Horner (2006–2011)James Trivers, Elizabeth Myers& Alan James Pasqua (2011–2012)Country of originUnited StatesOriginal languageEnglishNo. of seasons14No. of episodes3,580ProductionExecutive producerBatt HumphreysProduction locationsGeneral Motors Building, New York CityC...

Kembali kehalaman sebelumnya