diff options
Diffstat (limited to 'opendc-simulator/opendc-simulator-compute/src/main')
3 files changed, 10 insertions, 6 deletions
diff --git a/opendc-simulator/opendc-simulator-compute/src/main/java/org/opendc/simulator/compute/machine/SimMachine.java b/opendc-simulator/opendc-simulator-compute/src/main/java/org/opendc/simulator/compute/machine/SimMachine.java index c9e3ab8c..5f4a4fcd 100644 --- a/opendc-simulator/opendc-simulator-compute/src/main/java/org/opendc/simulator/compute/machine/SimMachine.java +++ b/opendc-simulator/opendc-simulator-compute/src/main/java/org/opendc/simulator/compute/machine/SimMachine.java @@ -46,6 +46,7 @@ import org.opendc.simulator.engine.graph.FlowDistributor; import org.opendc.simulator.engine.graph.FlowEdge; import org.opendc.simulator.engine.graph.FlowNode; import org.opendc.simulator.engine.graph.FlowSupplier; +import org.opendc.simulator.engine.graph.distributionPolicies.FlowDistributorFactory; /** * A machine that is able to execute {@link SimWorkload} objects. @@ -220,7 +221,9 @@ public class SimMachine { -1); // Create a FlowDistributor and add the cpu as supplier - this.distributors.put(ResourceType.CPU, new FlowDistributor(engine)); + this.distributors.put( + ResourceType.CPU, + FlowDistributorFactory.getFlowDistributor(engine, this.machineModel.getCpuDistributionStrategy())); new FlowEdge( this.distributors.get(ResourceType.CPU), (FlowSupplier) this.computeResources.get(ResourceType.CPU).getFirst(), @@ -232,7 +235,9 @@ public class SimMachine { this.memory = new Memory(engine, this.machineModel.getMemory()); if (this.availableResources.contains(ResourceType.GPU)) { - this.distributors.put(ResourceType.GPU, new FlowDistributor(engine)); + this.distributors.put( + ResourceType.GPU, + FlowDistributorFactory.getFlowDistributor(engine, this.machineModel.getGpuDistributionStrategy())); ArrayList<ComputeResource> gpus = new ArrayList<>(); for (GpuModel gpuModel : machineModel.getGpuModels()) { diff --git a/opendc-simulator/opendc-simulator-compute/src/main/java/org/opendc/simulator/compute/models/MachineModel.java b/opendc-simulator/opendc-simulator-compute/src/main/java/org/opendc/simulator/compute/models/MachineModel.java index e11d9cf2..f8cafc35 100644 --- a/opendc-simulator/opendc-simulator-compute/src/main/java/org/opendc/simulator/compute/models/MachineModel.java +++ b/opendc-simulator/opendc-simulator-compute/src/main/java/org/opendc/simulator/compute/models/MachineModel.java @@ -27,7 +27,7 @@ import java.util.List; import java.util.Objects; import org.jetbrains.annotations.Nullable; import org.opendc.common.ResourceType; -import org.opendc.simulator.engine.graph.distributionPolicies.DistributionPolicy; +import org.opendc.simulator.engine.graph.distributionPolicies.FlowDistributorFactory.DistributionPolicy; /** * A description of the physical or virtual machine on which a bootable image runs. @@ -85,8 +85,8 @@ public final class MachineModel { cpus.get(0).getArchitecture()), memory, null, - null, - null); + DistributionPolicy.MAX_MIN_FAIRNESS, + DistributionPolicy.MAX_MIN_FAIRNESS); } /** diff --git a/opendc-simulator/opendc-simulator-compute/src/main/java/org/opendc/simulator/compute/workload/VirtualMachine.java b/opendc-simulator/opendc-simulator-compute/src/main/java/org/opendc/simulator/compute/workload/VirtualMachine.java index 8922a97d..a8944efe 100644 --- a/opendc-simulator/opendc-simulator-compute/src/main/java/org/opendc/simulator/compute/workload/VirtualMachine.java +++ b/opendc-simulator/opendc-simulator-compute/src/main/java/org/opendc/simulator/compute/workload/VirtualMachine.java @@ -209,7 +209,6 @@ public final class VirtualMachine extends SimWorkload implements FlowSupplier { long delta = now - lastUpdate; for (ResourceType resourceType : this.availableResources) { - int i = 0; final double factor = this.resourceTimeScalingFactor.get(resourceType) * delta; if (delta > 0) { this.resourcePerformanceCounters |
