Skip to content

Commit d70312f

Browse files
Updated website documentation (#334)
* Updated website documentation * Updated some documentation and fixed links * small updates * small updates
1 parent 1bc17ab commit d70312f

File tree

41 files changed

+972
-820
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+972
-820
lines changed

opendc-compute/opendc-compute-simulator/src/main/java/org/opendc/compute/simulator/service/ComputeService.java

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -418,7 +418,8 @@ SchedulingRequest schedule(ServiceTask task, boolean atFront) {
418418
LOGGER.debug("Enqueueing task {} to be assigned to host", task.getUid());
419419

420420
if (task.getNumFailures() >= maxNumFailures) {
421-
LOGGER.warn("task {} has been terminated because it failed {} times", task, task.getNumFailures());
421+
LOGGER.warn("task {} has been terminated because it failed {} times", (Object) task, (Object)
422+
task.getNumFailures());
422423

423424
tasksTerminated++;
424425
task.setState(TaskState.TERMINATED);
@@ -493,20 +494,6 @@ private void doSchedule() {
493494

494495
final ServiceFlavor flavor = task.getFlavor();
495496

496-
// if (task.getNumFailures() >= maxNumFailures) {
497-
// LOGGER.warn("task {} has been terminated because it failed {} times", task,
498-
// task.getNumFailures());
499-
//
500-
// taskQueue.remove(req);
501-
// tasksPending--;
502-
// tasksTerminated++;
503-
// task.setState(TaskState.TERMINATED);
504-
//
505-
// scheduler.removeTask(task, hv);
506-
// this.setTaskToBeRemoved(task);
507-
// continue;
508-
// }
509-
510497
if (result.getResultType() == SchedulingResultType.FAILURE) {
511498
LOGGER.trace("Task {} selected for scheduling but no capacity available for it at the moment", task);
512499

opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/scheduler/ComputeSchedulers.kt

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ public enum class ComputeSchedulerEnum {
4848
Random,
4949
TaskNumMemorizing,
5050
Timeshift,
51-
TimeshiftNoPeak,
5251
}
5352

5453
public fun createPrefabComputeScheduler(
@@ -129,13 +128,5 @@ public fun createPrefabComputeScheduler(
129128
clock = clock,
130129
random = SplittableRandom(seeder.nextLong()),
131130
)
132-
ComputeSchedulerEnum.TimeshiftNoPeak ->
133-
TimeshiftScheduler(
134-
filters = listOf(ComputeFilter(), VCpuFilter(cpuAllocationRatio), RamFilter(ramAllocationRatio)),
135-
weighers = listOf(RamWeigher(multiplier = 1.0)),
136-
windowSize = 168,
137-
clock = clock,
138-
random = SplittableRandom(seeder.nextLong()),
139-
)
140131
}
141132
}

opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/scheduler/MemorizingScheduler.kt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ public class MemorizingScheduler(
3535
private val filters: List<HostFilter>,
3636
private val maxTimesSkipped: Int = 7,
3737
) : ComputeScheduler {
38-
// We assume that there will be max 200 tasks per host.
38+
// We assume that there will be max 100 tasks per host.
3939
// The index of a host list is the number of tasks on that host.
4040
private val hostsQueue = List(100, { mutableListOf<HostView>() })
4141
private var minAvailableHost = 0
@@ -78,6 +78,10 @@ public class MemorizingScheduler(
7878
return SchedulingResult(SchedulingResultType.FAILURE)
7979
}
8080

81+
// if (minAvailableHost == 1) {
82+
// return SchedulingResult(SchedulingResultType.EMPTY);
83+
// }
84+
8185
val maxIters = 10000
8286
var numIters = 0
8387

opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/parquet/ComputeExportConfig.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ public data class ComputeExportConfig(
106106

107107
/**
108108
* Config that includes all columns defined in [DfltHostExportColumns], [DfltTaskExportColumns],
109-
* [DfltPowerSourceExportColumns], [batteryExportColumns], [DfltServiceExportColumns] among all other loaded
109+
* [DfltPowerSourceExportColumns], [DfltBatteryExportColumns], [DfltServiceExportColumns] among all other loaded
110110
* columns for [HostTableReader], [TaskTableReader] and [ServiceTableReader].
111111
*/
112112
public val ALL_COLUMNS: ComputeExportConfig by lazy {

opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/parquet/DfltBatteryExportColumns.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,12 +57,12 @@ public object DfltBatteryExportColumns {
5757
field = Types.required(INT64).named("timestamp_absolute"),
5858
) { it.timestampAbsolute.toEpochMilli() }
5959

60-
public val NAME: ExportColumn<BatteryTableReader> =
60+
public val BATTERY_NAME: ExportColumn<BatteryTableReader> =
6161
ExportColumn(
6262
field =
6363
Types.required(BINARY)
6464
.`as`(LogicalTypeAnnotation.stringType())
65-
.named("name"),
65+
.named("battery_name"),
6666
) { Binary.fromString(it.batteryInfo.name) }
6767

6868
public val CLUSTER_NAME: ExportColumn<BatteryTableReader> =
@@ -111,9 +111,9 @@ public object DfltBatteryExportColumns {
111111
*/
112112
internal val BASE_EXPORT_COLUMNS =
113113
setOf(
114-
TIMESTAMP_ABS,
115-
TIMESTAMP,
116-
NAME,
114+
BATTERY_NAME,
117115
CLUSTER_NAME,
116+
TIMESTAMP,
117+
TIMESTAMP_ABS,
118118
)
119119
}

opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/parquet/DfltHostExportColumns.kt

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -58,12 +58,12 @@ public object DfltHostExportColumns {
5858
field = Types.required(INT64).named("timestamp_absolute"),
5959
) { it.timestampAbsolute.toEpochMilli() }
6060

61-
public val NAME: ExportColumn<HostTableReader> =
61+
public val HOST_NAME: ExportColumn<HostTableReader> =
6262
ExportColumn(
6363
field =
6464
Types.required(BINARY)
6565
.`as`(LogicalTypeAnnotation.stringType())
66-
.named("name"),
66+
.named("host_name"),
6767
) { Binary.fromString(it.hostInfo.name) }
6868

6969
public val CLUSTER_NAME: ExportColumn<HostTableReader> =
@@ -84,30 +84,30 @@ public object DfltHostExportColumns {
8484
field = Types.required(INT64).named("mem_capacity"),
8585
) { it.hostInfo.memCapacity }
8686

87-
public val GUESTS_TERMINATED: ExportColumn<HostTableReader> =
87+
public val TASKS_TERMINATED: ExportColumn<HostTableReader> =
8888
ExportColumn(
89-
field = Types.required(INT32).named("guests_terminated"),
89+
field = Types.required(INT32).named("tasks_terminated"),
9090
) { it.tasksTerminated }
9191

92-
public val GUESTS_RUNNING: ExportColumn<HostTableReader> =
92+
public val TASKS_RUNNING: ExportColumn<HostTableReader> =
9393
ExportColumn(
94-
field = Types.required(INT32).named("guests_running"),
94+
field = Types.required(INT32).named("tasks_running"),
9595
) { it.tasksActive }
9696

97-
public val GUESTS_ERROR: ExportColumn<HostTableReader> =
97+
public val TASKS_ERROR: ExportColumn<HostTableReader> =
9898
ExportColumn(
99-
field = Types.required(INT32).named("guests_error"),
99+
field = Types.required(INT32).named("tasks_error"),
100100
) { it.guestsError }
101101

102-
public val GUESTS_INVALID: ExportColumn<HostTableReader> =
102+
public val TASKS_INVALID: ExportColumn<HostTableReader> =
103103
ExportColumn(
104-
field = Types.required(INT32).named("guests_invalid"),
104+
field = Types.required(INT32).named("tasks_invalid"),
105105
) { it.guestsInvalid }
106106

107-
public val CPU_LIMIT: ExportColumn<HostTableReader> =
107+
public val CPU_CAPACITY: ExportColumn<HostTableReader> =
108108
ExportColumn(
109-
field = Types.required(FLOAT).named("cpu_limit"),
110-
) { it.cpuLimit }
109+
field = Types.required(FLOAT).named("cpu_capacity"),
110+
) { it.cpuCapacity }
111111

112112
public val CPU_USAGE: ExportColumn<HostTableReader> =
113113
ExportColumn(
@@ -179,9 +179,9 @@ public object DfltHostExportColumns {
179179
*/
180180
internal val BASE_EXPORT_COLUMNS =
181181
setOf(
182-
TIMESTAMP_ABS,
183-
TIMESTAMP,
184-
NAME,
182+
HOST_NAME,
185183
CLUSTER_NAME,
184+
TIMESTAMP,
185+
TIMESTAMP_ABS,
186186
)
187187
}

opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/parquet/DfltPowerSourceExportColumns.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,12 +57,12 @@ public object DfltPowerSourceExportColumns {
5757
field = Types.required(INT64).named("timestamp_absolute"),
5858
) { it.timestampAbsolute.toEpochMilli() }
5959

60-
public val NAME: ExportColumn<PowerSourceTableReader> =
60+
public val SOURCE_NAME: ExportColumn<PowerSourceTableReader> =
6161
ExportColumn(
6262
field =
6363
Types.required(BINARY)
6464
.`as`(LogicalTypeAnnotation.stringType())
65-
.named("name"),
65+
.named("source_name"),
6666
) { Binary.fromString(it.powerSourceInfo.name) }
6767

6868
public val CLUSTER_NAME: ExportColumn<PowerSourceTableReader> =
@@ -98,9 +98,9 @@ public object DfltPowerSourceExportColumns {
9898
*/
9999
internal val BASE_EXPORT_COLUMNS =
100100
setOf(
101-
TIMESTAMP_ABS,
102-
TIMESTAMP,
103-
NAME,
101+
SOURCE_NAME,
104102
CLUSTER_NAME,
103+
TIMESTAMP,
104+
TIMESTAMP_ABS,
105105
)
106106
}

opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/parquet/DfltServiceExportColumns.kt

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -59,16 +59,21 @@ public object DfltServiceExportColumns {
5959
field = Types.required(INT32).named("hosts_up"),
6060
) { it.hostsUp }
6161

62-
public val TASKS_PENDING: ExportColumn<ServiceTableReader> =
62+
public val HOSTS_DOWN: ExportColumn<ServiceTableReader> =
6363
ExportColumn(
64-
field = Types.required(INT32).named("tasks_pending"),
65-
) { it.tasksPending }
64+
field = Types.required(INT32).named("hosts_down"),
65+
) { it.hostsDown }
6666

6767
public val TASKS_TOTAL: ExportColumn<ServiceTableReader> =
6868
ExportColumn(
6969
field = Types.required(INT32).named("tasks_total"),
7070
) { it.tasksTotal }
7171

72+
public val TASKS_PENDING: ExportColumn<ServiceTableReader> =
73+
ExportColumn(
74+
field = Types.required(INT32).named("tasks_pending"),
75+
) { it.tasksPending }
76+
7277
public val TASKS_ACTIVE: ExportColumn<ServiceTableReader> =
7378
ExportColumn(
7479
field = Types.required(INT32).named("tasks_active"),
@@ -79,27 +84,17 @@ public object DfltServiceExportColumns {
7984
field = Types.required(INT32).named("tasks_completed"),
8085
) { it.tasksCompleted }
8186

82-
public val TASKS_FAILED: ExportColumn<ServiceTableReader> =
87+
public val TASKS_TERMINATED: ExportColumn<ServiceTableReader> =
8388
ExportColumn(
8489
field = Types.required(INT32).named("tasks_terminated"),
8590
) { it.tasksTerminated }
8691

87-
public val ATTEMPTS_SUCCESS: ExportColumn<ServiceTableReader> =
88-
ExportColumn(
89-
field = Types.required(INT32).named("attempts_success"),
90-
) { it.attemptsSuccess }
91-
92-
public val ATTEMPTS_FAILURE: ExportColumn<ServiceTableReader> =
93-
ExportColumn(
94-
field = Types.required(INT32).named("attempts_failure"),
95-
) { it.attemptsFailure }
96-
9792
/**
9893
* The columns that are always included in the output file.
9994
*/
10095
internal val BASE_EXPORT_COLUMNS =
10196
setOf(
102-
TIMESTAMP_ABS,
10397
TIMESTAMP,
98+
TIMESTAMP_ABS,
10499
)
105100
}

opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/parquet/DfltTaskExportColumns.kt

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -74,16 +74,24 @@ public object DfltTaskExportColumns {
7474
.named("task_name"),
7575
) { Binary.fromString(it.taskInfo.name) }
7676

77-
public val CPU_COUNT: ExportColumn<TaskTableReader> =
77+
public val HOST_NAME: ExportColumn<TaskTableReader> =
7878
ExportColumn(
79-
field = Types.required(INT32).named("cpu_count"),
80-
) { it.taskInfo.cpuCount }
79+
field =
80+
Types.required(BINARY)
81+
.`as`(LogicalTypeAnnotation.stringType())
82+
.named("host_name"),
83+
) { Binary.fromString(it.host?.name) }
8184

8285
public val MEM_CAPACITY: ExportColumn<TaskTableReader> =
8386
ExportColumn(
8487
field = Types.required(INT64).named("mem_capacity"),
8588
) { it.taskInfo.memCapacity }
8689

90+
public val CPU_COUNT: ExportColumn<TaskTableReader> =
91+
ExportColumn(
92+
field = Types.required(INT32).named("cpu_count"),
93+
) { it.taskInfo.cpuCount }
94+
8795
public val CPU_LIMIT: ExportColumn<TaskTableReader> =
8896
ExportColumn(
8997
field = Types.required(FLOAT).named("cpu_limit"),
@@ -167,9 +175,9 @@ public object DfltTaskExportColumns {
167175
*/
168176
internal val BASE_EXPORT_COLUMNS =
169177
setOf(
170-
TIMESTAMP_ABS,
171-
TIMESTAMP,
172178
TASK_ID,
173179
TASK_NAME,
180+
TIMESTAMP,
181+
TIMESTAMP_ABS,
174182
)
175183
}

opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/table/host/HostTableReader.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ public interface HostTableReader : Exportable {
7575
/**
7676
* The capacity of the CPUs in the host (in MHz).
7777
*/
78-
public val cpuLimit: Double
78+
public val cpuCapacity: Double
7979

8080
/**
8181
* The usage of all CPUs in the host (in MHz).

0 commit comments

Comments
 (0)