You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aurora.apache.org by wf...@apache.org on 2017/09/26 23:42:17 UTC
aurora git commit: Restore scheduler benchmarks to working order
Repository: aurora
Updated Branches:
refs/heads/master 0606369e2 -> 79ff364bc
Restore scheduler benchmarks to working order
Reviewed at https://reviews.apache.org/r/62558/
Project: http://git-wip-us.apache.org/repos/asf/aurora/repo
Commit: http://git-wip-us.apache.org/repos/asf/aurora/commit/79ff364b
Tree: http://git-wip-us.apache.org/repos/asf/aurora/tree/79ff364b
Diff: http://git-wip-us.apache.org/repos/asf/aurora/diff/79ff364b
Branch: refs/heads/master
Commit: 79ff364bc1366f0def140258e4caea7eb706a701
Parents: 0606369
Author: Bill Farner <wf...@apache.org>
Authored: Tue Sep 26 16:42:07 2017 -0700
Committer: Bill Farner <wf...@apache.org>
Committed: Tue Sep 26 16:42:07 2017 -0700
----------------------------------------------------------------------
build.gradle | 2 +-
.../aurora/benchmark/SchedulingBenchmarks.java | 19 ++++++++++++++++---
2 files changed, 17 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/aurora/blob/79ff364b/build.gradle
----------------------------------------------------------------------
diff --git a/build.gradle b/build.gradle
index 851bab5..460500a 100644
--- a/build.gradle
+++ b/build.gradle
@@ -16,7 +16,7 @@ plugins {
id 'com.github.ben-manes.versions' version '0.11.3'
id 'com.github.hierynomus.license' version '0.11.0'
id 'com.moowork.node' version '1.1.1'
- id 'me.champeau.gradle.jmh' version '0.2.0'
+ id 'me.champeau.gradle.jmh' version '0.4.4'
}
apply plugin: 'application'
http://git-wip-us.apache.org/repos/asf/aurora/blob/79ff364b/src/jmh/java/org/apache/aurora/benchmark/SchedulingBenchmarks.java
----------------------------------------------------------------------
diff --git a/src/jmh/java/org/apache/aurora/benchmark/SchedulingBenchmarks.java b/src/jmh/java/org/apache/aurora/benchmark/SchedulingBenchmarks.java
index ddbfd37..cb783ce 100644
--- a/src/jmh/java/org/apache/aurora/benchmark/SchedulingBenchmarks.java
+++ b/src/jmh/java/org/apache/aurora/benchmark/SchedulingBenchmarks.java
@@ -28,6 +28,7 @@ import com.google.common.eventbus.EventBus;
import com.google.inject.AbstractModule;
import com.google.inject.Guice;
import com.google.inject.Injector;
+import com.google.inject.Key;
import com.google.inject.PrivateModule;
import com.google.inject.TypeLiteral;
@@ -58,7 +59,6 @@ import org.apache.aurora.scheduler.offers.OfferSettings;
import org.apache.aurora.scheduler.offers.OffersModule;
import org.apache.aurora.scheduler.preemptor.BiCache;
import org.apache.aurora.scheduler.preemptor.ClusterStateImpl;
-import org.apache.aurora.scheduler.preemptor.PendingTaskProcessor;
import org.apache.aurora.scheduler.preemptor.PreemptorModule;
import org.apache.aurora.scheduler.scheduling.RescheduleCalculator;
import org.apache.aurora.scheduler.scheduling.TaskScheduler;
@@ -103,7 +103,6 @@ public class SchedulingBenchmarks {
private static final Amount<Long, Time> DELAY_FOREVER = Amount.of(30L, Time.DAYS);
private static final Integer BATCH_SIZE = 5;
protected Storage storage;
- protected PendingTaskProcessor pendingTaskProcessor;
private TaskScheduler taskScheduler;
private OfferManager offerManager;
private EventBus eventBus;
@@ -184,9 +183,10 @@ public class SchedulingBenchmarks {
taskScheduler = injector.getInstance(TaskScheduler.class);
offerManager = injector.getInstance(OfferManager.class);
- pendingTaskProcessor = injector.getInstance(PendingTaskProcessor.class);
eventBus.register(injector.getInstance(ClusterStateImpl.class));
+ withInjector(injector);
+
settings = getSettings();
saveHostAttributes(settings.getHostAttributes());
@@ -197,6 +197,11 @@ public class SchedulingBenchmarks {
saveTasks(settings.getTasks());
}
+ protected void withInjector(Injector injector) {
+ // No-op by default. Subclasses may use this to retrieve bindings from the injector for use
+ // in their test.
+ }
+
private Set<IScheduledTask> buildClusterTasks(int numOffers) {
int numSiblingTasks = (int) Math.round(numOffers * settings.getSiblingClusterUtilization());
int numVictimTasks = (int) Math.round(numOffers * settings.getVictimClusterUtilization());
@@ -354,6 +359,14 @@ public class SchedulingBenchmarks {
@Param({"1", "10", "100", "1000"})
public int numPendingTasks;
+ private Runnable pendingTaskProcessor;
+
+ @Override
+ protected void withInjector(Injector injector) {
+ pendingTaskProcessor =
+ injector.getInstance(Key.get(Runnable.class, PreemptorModule.PreemptionSlotFinder.class));
+ }
+
@Override
protected BenchmarkSettings getSettings() {
return new BenchmarkSettings.Builder()