Che cos’è l’accesso uniforme alla memoria?

L’Uniform Memory Access (UMA) è un tipo di architettura di rete che consente a tutti i processori di utilizzare equamente i chip di memoria per l’archiviazione e per l’elaborazione. Sebbene in una rete siano in genere presenti molti processori, a ogni processore viene concesso lo stesso accesso di ogni altro processore nel sistema. Si può dire che i computer autonomi hanno un accesso alla memoria uniforme, perché la maggior parte dei computer ha solo un processore, ma questo termine è più indicato per le reti con due o più utenti che richiedono memoria contemporaneamente. Ad ogni processore è inoltre assegnata una cache di memoria personale, che aiuta a velocizzare l’elaborazione per il singolo utente.

In una rete, in genere ci sono molti computer che si contendono l’accesso alla memoria del computer contemporaneamente e ci sono diverse architetture di computer realizzate per facilitare questo problema. Con un accesso uniforme alla memoria, ogni processore è in grado di utilizzare la memoria disponibile. Altri metodi impostano i processori per prendere la memoria più vicina, ma UMA porta semplicemente il processore su qualsiasi memoria fisica disponibile.

Con altri sistemi di rete, i processori potrebbero essere in grado di accedere alla memoria solo dopo che i processori precedenti hanno terminato l’accesso alla memoria, oppure alcuni processori potrebbero avere un’autorità più elevata e sono a conoscenza di un migliore accesso alla memoria. Nel sistema di accesso uniforme alla memoria, a ogni computer viene concesso lo stesso accesso alla memoria fisica e ogni processore può utilizzare la stessa quantità di memoria. Ciò significa che è necessaria una minore programmazione, perché i processori non sono differenziati; questo impedisce anche agli utenti con un’autorizzazione bassa di attendere di elaborare un’attività.

Si può considerare che i computer autonomi oi computer non connessi a una rete abbiano accesso alla memoria uniforme, ma il termine è ridondante in questa situazione. La maggior parte dei computer standalone ha un solo processore principale, quindi non ci sarebbero altri processori con cui lottare per la memoria fisica. Per questo motivo, UMA viene in genere utilizzato per descrivere una rete in cui due o più persone stanno tentando di elaborare attività e accedere alla memoria contemporaneamente.

Oltre ad avere accesso comune alla memoria, ogni processore con accesso uniforme alla memoria è dotato di una cache personale. Questo tende a occupare più memoria rispetto ai sistemi di rete che hanno una cache condivisa, ma può anche essere più utile per ogni singolo utente. La cache carica rapidamente la memoria recente e, poiché la maggior parte degli utenti avrà compiti diversi all’interno della rete, questo servirà a ciascun utente piuttosto che servire male l’intera rete.