@Override public ResourceRequirement estimateRequirement(String s, ResourcePool resourcePool) { double memory = Double.parseDouble(s.split("-")[1]); return resourcePool.getResourceRequirementBuilder().setRequirement(MEMORY, memory).build(); } }
@Override public ResourceRequirement estimateRequirement(StringRequest s, ResourcePool resourcePool) { double memory = Double.parseDouble(s.getString().split("-")[1]); this.queriedRequests.add(s.getString()); return resourcePool.getResourceRequirementBuilder().setRequirement(MEMORY, memory).build(); } }
public ConcurrentBoundedPriorityIterable(final Comparator<? super T> prioritizer, ResourceEstimator<T> resourceEstimator, String storeRejectedRequestsSetting, ResourcePool pool) { this.estimator = resourceEstimator; this.resourcePool = pool; this.dimensions = this.resourcePool.getNumDimensions(); this.comparator = prioritizer; this.allDifferentComparator = new AllDifferentComparator(); this.elements = new TreeSet<>(this.allDifferentComparator); this.storeRejectedRequestsSetting = storeRejectedRequestsSetting; this.currentRequirement = this.resourcePool.getResourceRequirementBuilder().zero().build(); this.maxResourceRequirement = new ResourceRequirement(this.currentRequirement); this.candidateRequirement = new ResourceRequirement(this.currentRequirement); this.tmpRequirement = new ResourceRequirement(this.currentRequirement); this.reuse = new ResourceRequirement(this.currentRequirement); }
@Test public void test() { ResourcePool pool = ResourcePool.builder().maxResource(MEMORY, 1000.).maxResource(TIME, 200.).tolerance(MEMORY, 2.) .defaultRequirement(TIME, 1.).build(); Assert.assertEquals(pool.getNumDimensions(), 2); Assert.assertEquals(pool.getSoftBound(), new double[]{1000, 200}); // Default tolerance is 1.2 Assert.assertEquals(pool.getHardBound(), new double[]{2000, 240}); // Test default resource use Assert.assertEquals(pool.getResourceRequirementBuilder().build().getResourceVector(), new double[]{0, 1}); ResourceRequirement requirement = pool.getResourceRequirementBuilder().setRequirement(MEMORY, 10.).build(); Assert.assertEquals(requirement.getResourceVector(), new double[]{10, 1}); }
public ConcurrentBoundedPriorityIterable(final Comparator<? super T> prioritizer, ResourceEstimator<T> resourceEstimator, String storeRejectedRequestsSetting, ResourcePool pool) { this.estimator = resourceEstimator; this.resourcePool = pool; this.dimensions = this.resourcePool.getNumDimensions(); this.comparator = prioritizer; this.allDifferentComparator = new AllDifferentComparator(); this.elements = new TreeSet<>(this.allDifferentComparator); this.storeRejectedRequestsSetting = storeRejectedRequestsSetting; this.currentRequirement = this.resourcePool.getResourceRequirementBuilder().zero().build(); this.maxResourceRequirement = new ResourceRequirement(this.currentRequirement); this.candidateRequirement = new ResourceRequirement(this.currentRequirement); this.tmpRequirement = new ResourceRequirement(this.currentRequirement); this.reuse = new ResourceRequirement(this.currentRequirement); }