summaryrefslogtreecommitdiff
path: root/opendc-compute/opendc-compute-simulator/src/main/java/org/opendc
diff options
context:
space:
mode:
authorDante Niewenhuis <d.niewenhuis@hotmail.com>2025-03-18 22:55:50 +0100
committerGitHub <noreply@github.com>2025-03-18 22:55:50 +0100
commit5965492a9bab7e25dfc01c02bbfa7effe1e36dd0 (patch)
tree7b90b5e746859fc89aab6958de01a64190ce1378 /opendc-compute/opendc-compute-simulator/src/main/java/org/opendc
parent46ba81a45f7cb10c7f870bbf6946a46207ee353c (diff)
Made some changes to improve RAM of OpenDC (#318)
Diffstat (limited to 'opendc-compute/opendc-compute-simulator/src/main/java/org/opendc')
-rw-r--r--opendc-compute/opendc-compute-simulator/src/main/java/org/opendc/compute/simulator/service/ComputeService.java17
-rw-r--r--opendc-compute/opendc-compute-simulator/src/main/java/org/opendc/compute/simulator/service/ServiceTask.java5
2 files changed, 13 insertions, 9 deletions
diff --git a/opendc-compute/opendc-compute-simulator/src/main/java/org/opendc/compute/simulator/service/ComputeService.java b/opendc-compute/opendc-compute-simulator/src/main/java/org/opendc/compute/simulator/service/ComputeService.java
index 1fb9c6a2..eb8d3377 100644
--- a/opendc-compute/opendc-compute-simulator/src/main/java/org/opendc/compute/simulator/service/ComputeService.java
+++ b/opendc-compute/opendc-compute-simulator/src/main/java/org/opendc/compute/simulator/service/ComputeService.java
@@ -34,7 +34,6 @@ import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
-import java.util.Objects;
import java.util.Set;
import java.util.SplittableRandom;
import java.util.UUID;
@@ -594,15 +593,16 @@ public final class ComputeService implements AutoCloseable {
}
@NotNull
- public Flavor newFlavor(@NotNull String name, int cpuCount, long memorySize, @NotNull Map<String, ?> meta) {
+ public ServiceFlavor newFlavor(
+ @NotNull String name, int cpuCount, long memorySize, @NotNull Map<String, ?> meta) {
checkOpen();
final ComputeService service = this.service;
UUID uid = new UUID(service.clock.millis(), service.random.nextLong());
ServiceFlavor flavor = new ServiceFlavor(service, uid, name, cpuCount, memorySize, meta);
- service.flavorById.put(uid, flavor);
- service.flavors.add(flavor);
+ // service.flavorById.put(uid, flavor);
+ // service.flavors.add(flavor);
return flavor;
}
@@ -642,7 +642,7 @@ public final class ComputeService implements AutoCloseable {
@NotNull
public ServiceTask newTask(
@NotNull String name,
- @NotNull Flavor flavor,
+ @NotNull ServiceFlavor flavor,
@NotNull Workload workload,
@NotNull Map<String, ?> meta) {
checkOpen();
@@ -650,10 +650,11 @@ public final class ComputeService implements AutoCloseable {
final ComputeService service = this.service;
UUID uid = new UUID(service.clock.millis(), service.random.nextLong());
- final ServiceFlavor internalFlavor =
- Objects.requireNonNull(service.flavorById.get(flavor.getUid()), "Unknown flavor");
+ // final ServiceFlavor internalFlavor =
+ // Objects.requireNonNull(service.flavorById.get(flavor.getUid()), "Unknown flavor");
- ServiceTask task = new ServiceTask(service, uid, name, internalFlavor, workload, meta);
+ // ServiceTask task = new ServiceTask(service, uid, name, internalFlavor, workload, meta);
+ ServiceTask task = new ServiceTask(service, uid, name, flavor, workload, meta);
service.taskById.put(uid, task);
diff --git a/opendc-compute/opendc-compute-simulator/src/main/java/org/opendc/compute/simulator/service/ServiceTask.java b/opendc-compute/opendc-compute-simulator/src/main/java/org/opendc/compute/simulator/service/ServiceTask.java
index 06d6535d..dac65d67 100644
--- a/opendc-compute/opendc-compute-simulator/src/main/java/org/opendc/compute/simulator/service/ServiceTask.java
+++ b/opendc-compute/opendc-compute-simulator/src/main/java/org/opendc/compute/simulator/service/ServiceTask.java
@@ -49,7 +49,7 @@ public class ServiceTask {
private final UUID uid;
private final String name;
- private final ServiceFlavor flavor;
+ private ServiceFlavor flavor;
public Workload workload;
private Map<String, ?> meta; // TODO: remove this
@@ -181,6 +181,9 @@ public class ServiceTask {
}
service.delete(this);
+ this.workload = null;
+ this.flavor = null;
+
this.setState(TaskState.DELETED);
}