Predictive B+ tree: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Bot: fix citazione web (v. discussione) |
m apostrofo tipografico |
||
Riga 9:
* Rimpiazzare direttamente la [[DRAM]] con una PCM in modo da avere una maggiore capacità di memoria principale
* Utilizzare una grande PCM insieme ad una piccola DRAM (
Il modello utilizzato nel BP Tree è il secondo. In tal modo è possibile utilizzare la piccola DRAM come buffer per la PCM al fine di mantenere quei dati che devono essere spesso acceduti o modificati.
== Vantaggi e problematiche per sistemi operanti con PCM ==
Le memorie a cambiamento di fase promettono feature interessanti. Innanzitutto offrono uno storage non volatile ad accesso casuale con indirizzamento a byte e velocità di lettura e scrittura molto elevate. Hanno inoltre una densità molto superiore alle attuali DRAM ed un consumo energetico decisamente inferiore alle memorie NAND FLASH. In seguito è possibile vedere una semplice tabella prestazionale che confronta le performance degli attuali tipi di memorie analizzando principalmente la densità, la velocità, il consumo energetico e
{| class="wikitable"
Riga 62:
== Obiettivo del BP Tree ==
Date le prestazioni della tabella precedente,
A tal scopo sono state adottate diverse tecniche.
=== Modello predittivo ===
Per ridurre le scritture è stato adottato un modello predittivo per calcolare il valore futuro (o la distribuzione futura) di un valore casuale. Questo modello combina
=== Strategia a foglie non ordinate ===
=== Minimizzazione delle operazioni di Split e Merge ===
Riga 76:
== Architettura del BP Tree ==
=== DRAM Buffer ===
Al suo interno viene memorizzato un piccolo B+ Tree (altezza h e branching factor 2m) e
=== PCM ===
Riga 88:
[[File:BPTree-WarmUp.png|thumb|Esempio di fase di Warm-Up. Il B+ Tree è pieno e viene trasferito nella PCM. Nell’istogramma la parte blu rappresenta l’effettiva distribuzione delle chiavi, la parte rossa la predizione ottenuta con il modello matematico. Il nodo C del B+ Tree viene scisso nel BP Tree nei nodi C e C’ a causa della predizione futura.]]
Con questo termine si identifica la prima fase di creazione di un BP Tree. Inizialmente il BP Tree è vuoto e utilizziamo il B+ Tree presente nella DRAM per la creazione del primo albero binario. Ad ogni nodo inserito aggiorniamo
=== Fase di Update ===
Riga 97:
La chiave viene ricercata sia nel B+ Tree che nel BP Tree.
==== Rimozione ====
La chiave viene ricercata e rimossa sia nel B+ Tree che nel BP Tree, con conseguente aggiornamento
==== Aggiornamento ====
Viene trattato come una rimozione seguita da un inserimento.
|