Boosting performance of directory-based cache coherence protocols by detecting private memory blocks at subpage granularity and using a low cost on-chip page table
- Global styles
- Apa
- Bibtex
- Chicago Fullnote
- Help
Abstract
Çok çekirdekli işlemciler'de (CMP) yüksek performans sağlamak için etkili önbellek tutarlılık protokolleri ve yanı sıra hızlı sanal-fiziksel adres çeviri mekanizmaları gerekir. Dizin (Directory) temelli önbellek tutarlılık protokolleri çok çekirdekli işlemcilerede, veri bloklarının son seviye özel önbelleklerde tutarlı birŞekilde bulunmasını sağlamak amacıyla yaygın bir şekilde kullanılan bir yaklaşımdır. Ancak, dizin yapılarının büyük fiziksel alan işgal etmeleri ve önbellek ilişkilendirmesinin yüksek olması sebebiyle, çekirdek sayısı çoğaldıkça ölçeklenebilirlik derecesi düşebilir. Daha önceki çalışmalarda gösterildiği gibi, veri bloklarının önemli bir yüzdesi sadece tek bir çekirdek tarafından erişilir. Bu nedenle, dizin yapısında bu veri bloklarınını takip etmek gerekli değildir. Bu tez, iki büyük katkıyı sunmaktadır: ilk olarak, daha önceki çalışmalarda önerilmiş olan sayfa düzeyini göze alarak sınıflandırmaya göre, alt sayfa düzeyinde veri bloklarını sınıflandırma önemli bir ölçüde daha çok özel veri bloklarının tespit edilmesine yardımcı olabileceğini gösterdik. Sonuç olarak, bu yaklaşım, benzer sayfa düzeyinde sınıflandırma yaklaşımlarına göre, dizinde takip edilmesi gereken blokların yüzdesini önemli bir ölçüde düşürür. Bu da, olabildiğince çok çekirdekli işlemcilerde performansa zarar vermeden daha küçük ve daha az ilişkilerdirmeli olan önbellek dizinlerinin kullanılmasını mümkün kılıp, böylece dizin yapısının çekirdek sayısının çoğalmasıyla beraber ölçeklenmesine yardım eder. Ancak alt sayfa düzeyinde bellek bloğu sınıflandırma, işletim sisteminin sayfa tablosu girdilerinde saklanan alt sayfalara ait bakım bitlerinin güncelleme yükselmesine neden olabilir. Bu yüzden alt sayfa düzeyinde veri sınıflandırma performans avantajlarının bir kısmı boşa çıkarılabilir. Bunun üstesinden gelmek için, ikinci bir katkı olarak, bu tezde dağıtımlı yonga üstü sayfa tablosu kavramı önerilmektedir. Önerilen yonga üstü sayfa tablosu sistemde en son erişilmiş olan sayfaları saklamaktadır.Simülasyon sonuçlarımıza göre, önerdiğimiz yöntem ortalama olarak dizin belleklerin tahliye sayısı oranını 58% azaltmaktadır. Ayrıca, yonga üstü sayfa tablosu işletim sistemi sayfa tablosu erişimini 84% azaltıp ve o yüzden sistem performansında ilerlemeye yardımcı olmaktadır. Chip multiprocessors (CMPs) require effective cache coherence protocols as well as fast virtual-to-physical address translation mechanisms for high performance. Directory-based cache coherence protocols are the state-of-the-art approaches in many-core CMPs to keep the data blocks coherent at the last level private caches. However, the area overhead and high associativity requirement of the directory structures may not scale well with increasingly higher number of cores.As shown in some prior studies, a significant percentage of data blocks are accessed by only one core, therefore, it is not necessary to keep track of these in the directory structure. In this thesis, we have two major contributions. First, we showed that compared to the classification of cache blocks at page granularity as done in some previous studies, data block classification at subpage level helps to detect considerably more private data blocks. Consequently, it reduces the percentage of blocks required to be tracked in the directory significantly compared to similar page level classification approaches. This, in turn, enables smaller directory caches with lower associativity to be used in CMPs without hurting performance, thereby helping the directory structure to scale gracefully with the increasing number of cores. Memory block classification at subpage level, however, may increase the frequency of the operating system's involvement in updating the maintenance bits belonging to subpages stored in page table entries, nullifying some portion of performance benefits of subpage level data classification. To overcome this, we propose as a second contribution, the distributed on-chip page table. The proposed on-chip page table stores recently accessed pages in the system.Our simulation results show that, our approach reduces the number of evictions in directory caches by 58/%, on the average. Moreover, system performance is improved further by avoiding 84/% of the references to OS page table through the on-chip page table.
Collections