code: protected void reportCachePerformance ()
      {
          if (/* Log.getLevel() != Log.log.DEBUG || */
              _improv == null ||
              _cacheStatThrottle.throttleOp()) {
              return;
          }
  
          // compute our estimated memory usage
          long amem = 0;
          int asize = 0;
          synchronized (_atiles) {
              // first total up the active tiles
              Iterator<SoftReference<Tile>> iter = _atiles.values().iterator();
              while (iter.hasNext()) {
                  SoftReference<Tile> sref = iter.next();
                  Tile tile = sref.get();
                  if (tile != null) {
                      asize++;
                      amem += tile.getEstimatedMemoryUsage();
                  }
              }
          }
          log.info("Tile caches", "amem", (amem / 1024) + "k",
              "tmem", (Tile._totalTileMemory / 1024) + "k", "seen", _atiles.size(), "asize", + asize);
      }
docs: Reports statistics detailing the image manager cache performance and the current size of the
  cached images.