Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Кіріспе
Тек кэш жады архитектурасы (COMA) — мультипроцессорларда қолданылатын компьютерлік жад ұйымы, онда әрбір түйіндегі жергілікті жад (әдетте DRAM) кэш ретінде пайдаланылады. Бұл NUMA ұйымдарындағыдай, жергілікті жадты нақты негізгі жад ретінде пайдаланудан өзгеше. NUMA-да, жалпы адрес кеңістігіндегі әрбір адреске әдетте белгілі бір үй түйіні тағайындалады. Процессорлар деректерге қол жеткізген кезде олардың көшірмесі жергілікті кэште жасалады, бірақ үй түйінінде де орын бөлінеді. COMA-да мұндай үй болмайды. Қашық түйіннен жасалған сұрау деректердің көшірілуіне әкелуі мүмкін. NUMA-мен салыстырғанда, бұл артық көшірмелердің санын азайтады және жад ресурстарын тиімді пайдалануға мүмкіндік береді. Алайда, бұл белгілі бір деректерді қалай табуға болатындығы (үй түйіні болмайды) және жергілікті жад толған жағдайда не істеу керек (жергілікті жадқа деректерді көшіру үшін басқа деректерді шығару қажет, бірақ оларға қайда бару керектігі белгісіз) деген мәселелерді тудырады. Көшіруді жүзеге асыру үшін әдетте аппараттық жадтың үйлесімділік механизмдері қолданылады. Осы мәселелерді зерттеуге арналған көптеген зерттеулер жүргізілді. Әртүрлі каталог түрлері, жергілікті жадта бос орынды сақтау саясаты, көші-қон саясаты және тек оқуға арналған көшірмелер саясаты әзірленді. Гибридті NUMA COMA ұйымдары да ұсынылды, мысалы, Reactive NUMA, ол беттерді NUMA режимінде бастауға және қажет болған жағдайда COMA режиміне ауысуға мүмкіндік береді және Sun Microsystems WildFire жүйесінде іске асырылған. ScaleMP компаниясы бағдарламалық негіздегі гибридті NUMA COMA іске асыруын ұсынды және іске асырды, бұл тауарлық түйіндер кластерінен ортақ жадты мультипроцессорлық жүйені құруға мүмкіндік береді.
Cache only memory architecture (COMA) is a computer memory organization for use in multiprocessors in which the local memories (typically DRAM) at each node are used as cache. This is in contrast to using the local memories as actual main memory, as in NUMA organizations. In NUMA, each address in the global address space is typically assigned a fixed home node. When processors access some data, a copy is made in their local cache, but space remains allocated in the home node. Instead, with COMA, there is no home. An access from a remote node may cause that data to migrate. Compared to NUMA, this reduces the number of redundant copies and may allow more efficient use of the memory resources. On the other hand, it raises problems of how to find a particular data (there is no longer a home node) and what to do if a local memory fills up (migrating some data into the local memory then needs to evict some other data, which doesn't have a home to go to). Hardware memory coherence mechanisms are typically used to implement the migration. A huge body of research has explored these issues. Various forms of directories, policies for maintaining free space in the local memories, migration policies, and policies for read only copies have been developed. Hybrid NUMA COMA organizations have also been proposed, such as Reactive NUMA, which allows pages to start in NUMA mode and switch to COMA mode if appropriate and is implemented in the Sun Microsystems's WildFire. A software based Hybrid NUMA COMA implementation was proposed and implemented by ScaleMP, allowing for the creation of a shared memory multiprocessor system out of a cluster of commodity nodes.