aplcachetf

estimatedIdleTime

1/28/2021 12:55:01 AM

Details

diff --git a/src/main/java/br/ufrgs/inf/prosoft/aplcachetf/extension/APLCache.java b/src/main/java/br/ufrgs/inf/prosoft/aplcachetf/extension/APLCache.java
index ed137b7..4b0fafe 100644
--- a/src/main/java/br/ufrgs/inf/prosoft/aplcachetf/extension/APLCache.java
+++ b/src/main/java/br/ufrgs/inf/prosoft/aplcachetf/extension/APLCache.java
@@ -96,11 +96,13 @@ public class APLCache {
           + " Hits " + method.getBestTFMetrics().getHits()
           + " Computation " + method.getBestTFMetrics().getComputationTime()
           + " TimeInCache " + method.getBestTFMetrics().getTimeInCache()
+          + " Idle " + method.getBestTFMetrics().getIdleTime()
           + " Stales " + method.getBestTFMetrics().getStales());
       } else {
         System.out.println(method.getName()
           + " Occurrences " + method.occurrences().count()
           + " EstimatedSavedTime " + method.getEstimatedSavedTime()
+          + " EstimatedIdleTime " + method.getEstimatedIdleTime()
           + " Inputs " + method.groupsOfOccurrences().count());
       }
     });
diff --git a/src/main/java/br/ufrgs/inf/prosoft/aplcachetf/extension/metadata/Method.java b/src/main/java/br/ufrgs/inf/prosoft/aplcachetf/extension/metadata/Method.java
index 5ea9abf..46dbbbd 100644
--- a/src/main/java/br/ufrgs/inf/prosoft/aplcachetf/extension/metadata/Method.java
+++ b/src/main/java/br/ufrgs/inf/prosoft/aplcachetf/extension/metadata/Method.java
@@ -48,9 +48,14 @@ public class Method {
         return this.bestTFMetrics;
     }
 
-    public double getEstimatedSavedTime() {
+    public long getEstimatedSavedTime() {
         if (getBestTFMetrics() != null) return getBestTFMetrics().getSavedTime();
-        return groupsOfOccurrences().map(it -> it.getMetrics().getSavedTime()).reduce(Double::sum).orElse(0D);
+        return groupsOfOccurrences().map(it -> it.getMetrics().getSavedTime()).reduce(Long::sum).orElse(0L);
+    }
+
+    public long getEstimatedIdleTime() {
+        if (getBestTFMetrics() != null) return getBestTFMetrics().getIdleTime();
+        return groupsOfOccurrences().map(it -> it.getMetrics().getPareto().getBestMetrics().getIdleTime()).reduce(Long::sum).orElse(0L);
     }
 
     public Stream<Occurrence> occurrences() {
diff --git a/src/main/java/br/ufrgs/inf/prosoft/aplcachetf/extension/metrics/Metrics.java b/src/main/java/br/ufrgs/inf/prosoft/aplcachetf/extension/metrics/Metrics.java
index bcc77c9..0cb3c9c 100644
--- a/src/main/java/br/ufrgs/inf/prosoft/aplcachetf/extension/metrics/Metrics.java
+++ b/src/main/java/br/ufrgs/inf/prosoft/aplcachetf/extension/metrics/Metrics.java
@@ -48,7 +48,7 @@ public class Metrics {
     return getPareto().getBestMetrics().getTtl();
   }
 
-  public double getSavedTime() {
+  public long getSavedTime() {
     return getPareto().getBestMetrics().getSavedTime();
   }