Arka fon
Harici bellek veya DAM modeli, bir algoritmanın maliyetini gerçekleştirdiği G / Ç sayısına göre (esas olarak önbellek kaçırma sayısı) tanımlar. Bu çalışma süreleri genellikle , belleğin boyutu ve bir kerede belleğe aktarılabilecek kelime sayısı olarak cinsinden verilir . Bazen ve sırasıyla ve için kullanılır .
Örneğin, sıralama maliyeti gerektirir ve saf matris çarpımı .
Bu model, veya bilgisi olmayan "önbellek-habersiz algoritmaları" analiz etmek için kullanılır . Genel olarak amaç, önbellek-habersiz algoritmanın harici bellek modelinde en iyi performansı göstermesidir; Permütasyon probleminde olduğu gibi bu her zaman mümkün değildir ( Brodal, Faderberg 2003'te gösterilmiştir ). Sıralama ve matris çarpımı tartışmaları da dahil olmak üzere önbelleksiz algoritmaların daha fazla açıklaması için Erik Demaine'nin bu yazısına bakın .
değiştirilmesinin sıralama için logaritmik bir hızlanmaya ve matris çarpımı için bir polinom hızlanmasına neden olduğunu görebiliriz . (Bu sonuç aslında Hong, Kung 1981'den alınmıştır ve aslında hem önbellek kayıtsızlığı hem de harici bellek modelinin resmileştirilmesinden önce gelir).
Sorum şu:
hızlanmanın üstel olduğu herhangi bir durum var mı ? Çalışma süresi gibi bir şey olacaktır . Özellikle bu tanıma uyan bir önbellek bilmeyen algoritma veya veri yapısı ile ilgileniyorum ancak önbellek kullanan bir algoritma / veri yapısı veya hatta en iyi bilinen alt sınırdan memnun olacağım.
Çoğu modelde, giriş boyutu ve açıkça ise kelimesinin büyüklüğünde olduğu varsayılır . Daha sonra bir hızlanma bir polinom hızlandırması verir . Bu, aradığım sorun var ise polinom olmadığına inanmamı sağlıyor. (Aksi takdirde, önbellek boyutunu sabit bir G / Ç elde etmek için sabit olarak değiştirebiliriz, bu da olası görünmüyor).N M > w 2 M N