From 2756689179fc9c56cd8a14a7ac65dbc93288bc6a Mon Sep 17 00:00:00 2001 From: Peter Powers <pmpowers@usgs.gov> Date: Thu, 3 Feb 2022 17:41:42 -0700 Subject: [PATCH] batch logging update --- .../java/gov/usgs/earthquake/nshmp/DisaggCalc.java | 4 ++-- .../java/gov/usgs/earthquake/nshmp/HazardCalc.java | 12 +++++++++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/main/java/gov/usgs/earthquake/nshmp/DisaggCalc.java b/src/main/java/gov/usgs/earthquake/nshmp/DisaggCalc.java index 59387fcd4..dd59717af 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/DisaggCalc.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/DisaggCalc.java @@ -301,7 +301,7 @@ public class DisaggCalc { Files.createDirectory(disaggDir); Stopwatch stopwatch = Stopwatch.createStarted(); - int logInterval = sites.size() > 1000 ? 100 : sites.size() > 100 ? 10 : 1; + int logInterval = sites.size() < 100 ? 1 : sites.size() < 1000 ? 10 : 100; for (int i = 0; i < sites.size(); i++) { Site site = sites.get(i); @@ -397,7 +397,7 @@ public class DisaggCalc { Files.createDirectory(disaggDir); Stopwatch stopwatch = Stopwatch.createStarted(); - int logInterval = sites.size() > 1000 ? 100 : sites.size() > 100 ? 10 : 1; + int logInterval = sites.size() < 100 ? 1 : sites.size() < 1000 ? 10 : 100; for (int i = 0; i < sites.size(); i++) { diff --git a/src/main/java/gov/usgs/earthquake/nshmp/HazardCalc.java b/src/main/java/gov/usgs/earthquake/nshmp/HazardCalc.java index 94b501ffb..9815cc2b2 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/HazardCalc.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/HazardCalc.java @@ -21,6 +21,7 @@ import java.util.concurrent.ThreadPoolExecutor; import java.util.logging.FileHandler; import java.util.logging.Logger; +import com.google.common.base.Stopwatch; import com.google.common.base.Throwables; import com.google.common.util.concurrent.MoreExecutors; @@ -175,10 +176,19 @@ public class HazardCalc { CalcTask.Builder calcTask = new CalcTask.Builder(model, config, exec); WriteTask.Builder writeTask = new WriteTask.Builder(handler); + Stopwatch stopwatch = Stopwatch.createStarted(); + int logInterval = sites.size() < 100 ? 1 : sites.size() < 1000 ? 10 : 100; + Future<Path> out = null; - for (Site site : sites) { + for (int i = 0; i < sites.size(); i++) { + Site site = sites.get(i); Hazard hazard = calcTask.withSite(site).call(); out = exec.submit(writeTask.withResult(hazard)); + if (i % logInterval == 0) { + log.info(String.format( + " %s of %s sites completed in %s", + i + 1, sites.size(), stopwatch)); + } } /* Block shutdown until last task is returned. */ Path outputDir = out.get(); -- GitLab