From 67d347816d150711d0650a03ecff158cf694761b Mon Sep 17 00:00:00 2001 From: Hansong Zhang Date: Fri, 13 Sep 2024 14:35:53 -0700 Subject: [PATCH 1/3] [Android] Use ms for number report ns * 1e-6 = ms --- .../example/executorchllamademo/LlmBenchmarkRunner.java | 4 ++-- .../java/org/pytorch/minibench/BenchmarkActivity.java | 8 ++++---- .../java/org/pytorch/minibench/LlmBenchmarkActivity.java | 8 ++++---- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/LlmBenchmarkRunner.java b/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/LlmBenchmarkRunner.java index efb9ab21eae..8fa4758998a 100644 --- a/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/LlmBenchmarkRunner.java +++ b/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/LlmBenchmarkRunner.java @@ -106,14 +106,14 @@ public void onGenerationStopped() { new BenchmarkMetric( benchmarkModel, "model_load_time(ns)", - mStatsDump.loadEnd - mStatsDump.loadStart, + (mStatsDump.loadEnd - mStatsDump.loadStart) * 1e-6, 0.0f)); // LLM generate time results.add( new BenchmarkMetric( benchmarkModel, "generate_time(ns)", - mStatsDump.generateEnd - mStatsDump.generateStart, + (mStatsDump.generateEnd - mStatsDump.generateStart) * 1e-6, 0.0f)); // Token per second results.add( diff --git a/extension/android/benchmark/app/src/main/java/org/pytorch/minibench/BenchmarkActivity.java b/extension/android/benchmark/app/src/main/java/org/pytorch/minibench/BenchmarkActivity.java index 4360bdcef85..d598eb785cb 100644 --- a/extension/android/benchmark/app/src/main/java/org/pytorch/minibench/BenchmarkActivity.java +++ b/extension/android/benchmark/app/src/main/java/org/pytorch/minibench/BenchmarkActivity.java @@ -56,7 +56,7 @@ protected void onCreate(Bundle savedInstanceState) { for (int i = 0; i < numIter; i++) { long start = System.nanoTime(); module.forward(); - long forwardMs = System.nanoTime() - start; + double forwardMs = (System.nanoTime() - start) * 1e-6; stats.latency.add(forwardMs); } @@ -68,13 +68,13 @@ protected void onCreate(Bundle savedInstanceState) { results.add( new BenchmarkMetric( benchmarkModel, - "avg_inference_latency(ns)", + "avg_inference_latency(ms)", stats.latency.stream().mapToDouble(l -> l).average().orElse(0.0f), 0.0f)); // Model load time results.add( new BenchmarkMetric( - benchmarkModel, "model_load_time(ns)", stats.loadEnd - stats.loadStart, 0.0f)); + benchmarkModel, "model_load_time(ms)", (stats.loadEnd - stats.loadStart) * 1e-6, 0.0f)); // Load status results.add(new BenchmarkMetric(benchmarkModel, "load_status", stats.errorCode, 0)); @@ -90,7 +90,7 @@ protected void onCreate(Bundle savedInstanceState) { class Stats { long loadStart; long loadEnd; - List latency = new ArrayList<>(); + List latency = new ArrayList<>(); int errorCode = 0; @Override diff --git a/extension/android/benchmark/app/src/main/java/org/pytorch/minibench/LlmBenchmarkActivity.java b/extension/android/benchmark/app/src/main/java/org/pytorch/minibench/LlmBenchmarkActivity.java index 04702562ba4..3bc38aad403 100644 --- a/extension/android/benchmark/app/src/main/java/org/pytorch/minibench/LlmBenchmarkActivity.java +++ b/extension/android/benchmark/app/src/main/java/org/pytorch/minibench/LlmBenchmarkActivity.java @@ -97,15 +97,15 @@ public void onGenerationStopped() { results.add( new BenchmarkMetric( benchmarkModel, - "model_load_time(ns)", - mStatsInfo.loadEnd - mStatsInfo.loadStart, + "model_load_time(ms)", + (mStatsInfo.loadEnd - mStatsInfo.loadStart) * 1e-6, 0.0f)); // LLM generate time results.add( new BenchmarkMetric( benchmarkModel, - "generate_time(ns)", - mStatsInfo.generateEnd - mStatsInfo.generateStart, + "generate_time(ms)", + (mStatsInfo.generateEnd - mStatsInfo.generateStart) * 1e-6, 0.0f)); // Token per second results.add( From 6fa3f2009b69daccb81f10a691e6d339d37231ab Mon Sep 17 00:00:00 2001 From: Hansong Zhang Date: Fri, 13 Sep 2024 14:38:03 -0700 Subject: [PATCH 2/3] Double --- .../src/main/java/org/pytorch/minibench/BenchmarkActivity.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extension/android/benchmark/app/src/main/java/org/pytorch/minibench/BenchmarkActivity.java b/extension/android/benchmark/app/src/main/java/org/pytorch/minibench/BenchmarkActivity.java index d598eb785cb..2397bcfb851 100644 --- a/extension/android/benchmark/app/src/main/java/org/pytorch/minibench/BenchmarkActivity.java +++ b/extension/android/benchmark/app/src/main/java/org/pytorch/minibench/BenchmarkActivity.java @@ -90,7 +90,7 @@ protected void onCreate(Bundle savedInstanceState) { class Stats { long loadStart; long loadEnd; - List latency = new ArrayList<>(); + List latency = new ArrayList<>(); int errorCode = 0; @Override From 11d53dd6f6bc04c194fc06b733c4368caaf2c27c Mon Sep 17 00:00:00 2001 From: Hansong Zhang Date: Fri, 13 Sep 2024 14:47:15 -0700 Subject: [PATCH 3/3] ms --- .../com/example/executorchllamademo/LlmBenchmarkRunner.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/LlmBenchmarkRunner.java b/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/LlmBenchmarkRunner.java index 8fa4758998a..7236fe317b0 100644 --- a/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/LlmBenchmarkRunner.java +++ b/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/LlmBenchmarkRunner.java @@ -105,14 +105,14 @@ public void onGenerationStopped() { results.add( new BenchmarkMetric( benchmarkModel, - "model_load_time(ns)", + "model_load_time(ms)", (mStatsDump.loadEnd - mStatsDump.loadStart) * 1e-6, 0.0f)); // LLM generate time results.add( new BenchmarkMetric( benchmarkModel, - "generate_time(ns)", + "generate_time(ms)", (mStatsDump.generateEnd - mStatsDump.generateStart) * 1e-6, 0.0f)); // Token per second