int freeCapacityInFlavorEquivalence(Flavor flavor) { if (!hasCapacityFor(ResourceCapacity.of(flavor))) return 0; double memoryFactor = Math.floor(memory/flavor.getMinMainMemoryAvailableGb()); double cpuFactor = Math.floor(cpu/flavor.getMinCpuCores()); double diskFactor = Math.floor(disk/flavor.getMinDiskAvailableGb()); double aggregateFactor = Math.min(memoryFactor, cpuFactor); aggregateFactor = Math.min(aggregateFactor, diskFactor); return (int)aggregateFactor; }
private void tuneFlushStrategyTlsSize(ProtonConfig.Flush.Memory.Builder builder) { long tlsSizeBytes = (long) ((nodeFlavor.getMinDiskAvailableGb() * 0.07) * GB); tlsSizeBytes = min(tlsSizeBytes, 100 * GB); builder.maxtlssize(tlsSizeBytes); }
static ResourceCapacity of(Flavor flavor) { ResourceCapacity capacity = new ResourceCapacity(); capacity.memory = flavor.getMinMainMemoryAvailableGb(); capacity.cpu = flavor.getMinCpuCores(); capacity.disk = flavor.getMinDiskAvailableGb(); return capacity; }
ResourceCapacity(Node node) { memory = node.flavor().getMinMainMemoryAvailableGb(); cpu = node.flavor().getMinCpuCores(); disk = node.flavor().getMinDiskAvailableGb(); }
void subtract(Node node) { memory -= node.flavor().getMinMainMemoryAvailableGb(); cpu -= node.flavor().getMinCpuCores(); disk -= node.flavor().getMinDiskAvailableGb(); }
private void setHwInfo(ProtonConfig.Builder builder) { builder.hwinfo.disk.size((long)nodeFlavor.getMinDiskAvailableGb() * GB); builder.hwinfo.disk.shared(nodeFlavor.getType().equals(Flavor.Type.DOCKER_CONTAINER)); builder.hwinfo.memory.size((long)nodeFlavor.getMinMainMemoryAvailableGb() * GB); builder.hwinfo.cpu.cores((int)nodeFlavor.getMinCpuCores()); }
object.setString("flavor", node.flavor().name()); object.setString("canonicalFlavor", node.flavor().canonicalName()); object.setDouble("minDiskAvailableGb", node.flavor().getMinDiskAvailableGb()); object.setDouble("minMainMemoryAvailableGb", node.flavor().getMinMainMemoryAvailableGb()); if (node.flavor().getDescription() != null && ! node.flavor().getDescription().isEmpty())