Correct typos from changing "flush" to "prune" using automated search/replace.
authorhyatt <hyatt@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 20 Oct 2006 05:14:49 +0000 (05:14 +0000)
committerhyatt <hyatt@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 20 Oct 2006 05:14:49 +0000 (05:14 +0000)
        Change the cache heuristic for flushing to allow a higher watermark before initiating an
        aggressive prune.  This ensures that small cache sizes are no worse in terms of performance
        than the old buggy cache.

        Make sizes unsigned instead of ints in the cache's APIs and member variables.

        * loader/Cache.cpp:
        (WebCore::Cache::prune):
        (WebCore::Cache::setMaximumSize):
        * loader/Cache.h:
        (WebCore::Cache::maximumSize):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17153 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebCore/ChangeLog
WebCore/loader/Cache.cpp
WebCore/loader/Cache.h

index 8d7fa6c68cc586c3377a1963445262333a627da9..b5fe0645281f1b4caa4d82bc6ca89d728d6af57d 100644 (file)
@@ -1,3 +1,19 @@
+2006-10-19  David Hyatt  <hyatt@apple.com>
+
+        Correct typos from changing "flush" to "prune" using automated search/replace.
+
+        Change the cache heuristic for flushing to allow a higher watermark before initiating an
+        aggressive prune.  This ensures that small cache sizes are no worse in terms of performance
+        than the old buggy cache.
+
+        Make sizes unsigned instead of ints in the cache's APIs and member variables.
+
+        * loader/Cache.cpp:
+        (WebCore::Cache::prune):
+        (WebCore::Cache::setMaximumSize):
+        * loader/Cache.h:
+        (WebCore::Cache::maximumSize):
+
 2006-10-19  Anders Carlsson  <acarlsson@apple.com>
 
         Reviewed by Daddy Hyatt.
index e211b65b5ddb3e16cbee6d4b0231e1d140eaca90..a008c81746c5c2eebd230c1fcf4bb1e89f5a4dcd 100644 (file)
@@ -42,7 +42,6 @@ using namespace std;
 namespace WebCore {
 
 const int cDefaultCacheSize = 8192 * 1024;
-const int cDefaultLargeResourceSize = 80 * 1024;
 
 Cache* cache()
 {
@@ -117,12 +116,12 @@ void Cache::prune()
     if (m_currentSize <= m_maximumSize)
         return;
 
-    // We allow the cache to get as big as the # of live objects + half the maximum cache size
+    // We allow the cache to get as big as the # of live objects + the maximum cache size
     // before we do a prune.  Once we do decide to prune though, we are aggressive about it.
-    // We will include the live objects as part of the overall cache size when pruneing, so will often
+    // We will include the live objects as part of the overall cache size when pruning, so will often
     // kill every last object that isn't referenced by a Web page.
     unsigned unreferencedResourcesSize = m_currentSize - m_liveResourcesSize;
-    if (unreferencedResourcesSize < m_maximumSize / 2U)
+    if (unreferencedResourcesSize < m_maximumSize)
         return;
 
     bool canShrinkLRULists = true;
@@ -135,7 +134,7 @@ void Cache::prune()
             if (!current->referenced()) {
                 remove(current);
                 
-                // Stop pruneing if our total cache size is back under the maximum or if every
+                // Stop pruning if our total cache size is back under the maximum or if every
                 // remaining object in the cache is live (meaning there is nothing left we are able
                 // to prune).
                 if (m_currentSize <= m_maximumSize || m_currentSize == m_liveResourcesSize)
@@ -145,7 +144,7 @@ void Cache::prune()
         }
             
         // Shrink the vector back down so we don't waste time inspecting
-        // empty LRU lists on future prunees.
+        // empty LRU lists on future prunes.
         if (m_lruLists[i].m_head)
             canShrinkLRULists = false;
         else if (canShrinkLRULists)
@@ -153,7 +152,7 @@ void Cache::prune()
     }
 }
 
-void Cache::setMaximumSize(int bytes)
+void Cache::setMaximumSize(unsigned bytes)
 {
     m_maximumSize = bytes;
     prune();
index 12fd20fa1ae609a049190065e03c4add1b38e1c4..52ec785f6efebda107907ed61bdeec8e32bd0e60 100644 (file)
@@ -69,8 +69,8 @@ public:
 
     // Set/retreive the size of the cache. This will only hold approximately, since the size some 
     // cached objects (like stylesheets) take up in memory is not exactly known.
-    void setMaximumSize(int bytes);
-    int maximumSize() const { return m_maximumSize; };
+    void setMaximumSize(unsigned bytes);
+    unsigned maximumSize() const { return m_maximumSize; };
 
     // Turn the cache on and off.  Disabling the cache will remove all resources from the cache.  They may
     // still live on if they are referenced by some Web page though.
@@ -132,9 +132,9 @@ private:
 
     bool m_disabled;  // Whether or not the cache is enabled.
 
-    int m_maximumSize;  // The maximum size in bytes that the global cache can consume.
-    int m_currentSize;  // The current size of the global cache in bytes.
-    int m_liveResourcesSize; // The current size of "live" resources that cannot be flushed.
+    unsigned m_maximumSize;  // The maximum size in bytes that the global cache can consume.
+    unsigned m_currentSize;  // The current size of the global cache in bytes.
+    unsigned m_liveResourcesSize; // The current size of "live" resources that cannot be flushed.
 
     // Size-adjusted and popularity-aware LRU list collection for cache objects.  This collection can hold
     // more resources than the cached resource map, since it can also hold "stale" muiltiple versions of objects that are