/** {@inheritDoc} */ @Override public Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, @Nullable Void arg) { ComputeJob job = job(this.job, this.arg); ClusterNode node = lb.getBalancedNode(job, null); return Collections.singletonMap(job, node); }
/** {@inheritDoc} */ @Nullable @Override public Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, @Nullable Object arg) { assert job != null : "Job null-check must be performed in native platform."; if (!F.isEmpty(subgrid)) { Map<ComputeJob, ClusterNode> map = new HashMap<>(1, 1); map.put(job, lb.getBalancedNode(job, null)); return map; } else return Collections.emptyMap(); }
/** {@inheritDoc} */ @Nullable @Override public Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, @Nullable Object arg) { assert !F.isEmpty(jobs) : "Jobs emptiness must be checked in native platform."; if (!F.isEmpty(subgrid)) { Map<ComputeJob, ClusterNode> map = new HashMap<>(jobs.size(), 1); for (PlatformJob job : jobs) map.put(job, lb.getBalancedNode(job, null)); return map; } else return Collections.emptyMap(); }
/** {@inheritDoc} */ @Override public Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, GridifyArgument arg) { assert !subgrid.isEmpty() : "Subgrid should not be empty: " + subgrid; assert ignite != null : "Grid instance could not be injected"; assert balancer != null : "Load balancer could not be injected"; ComputeJob job = new GridifyJobAdapter(arg); ClusterNode node = balancer.getBalancedNode(job, Collections.<ClusterNode>singletonList(ignite.cluster().localNode())); if (node != null) { // Give preference to remote nodes. return Collections.singletonMap(job, node); } return Collections.singletonMap(job, balancer.getBalancedNode(job, null)); }
/** {@inheritDoc} */ @Override public Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, @Nullable Void arg) { try { JobMapper mapper = new JobMapper(args.size()); for (T jobArg : args) { ComputeJob job = job(this.job, jobArg); ClusterNode node = lb.getBalancedNode(job, null); mapper.map(job, node); } return mapper.map(); } catch (IgniteCheckedException e) { throw new IgniteException(e); } }
/** {@inheritDoc} */ @Override public Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, @Nullable Void arg) { try { JobMapper mapper = new JobMapper(args.size()); for (T jobArg : args) { ComputeJob job = job(this.job, jobArg); ClusterNode node = lb.getBalancedNode(job, null); mapper.map(job, node); } return mapper.map(); } catch (IgniteCheckedException e) { throw new IgniteException(e); } }
/** {@inheritDoc} */ @Override public final Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, T arg) { assert subgrid != null; assert !subgrid.isEmpty(); Collection<? extends ComputeJob> jobs = split(subgrid.size(), arg); if (F.isEmpty(jobs)) throw new IgniteException("Split returned no jobs."); Map<ComputeJob, ClusterNode> map = U.newHashMap(jobs.size()); for (ComputeJob job : jobs) { ClusterNode old = map.put(job, balancer.getBalancedNode(job, null)); if (old != null) throw new IgniteException("Failed to map task (same job instance is being mapped more than once) " + "[job=" + job + ", task=" + this + ']'); } return map; } }
/** * @param nodes List of ClusterNode. * @param chromosomeKeyFitness Map of key/fitness score pairs. * @return Map of nodes to jobs. */ @Override public Map<ComputeJob, ClusterNode> map(List<ClusterNode> nodes, LinkedHashMap<Long, Double> chromosomeKeyFitness) throws IgniteException { Map<ComputeJob, ClusterNode> map = new HashMap<>(); Affinity affinity = ignite.affinity(GAGridConstants.POPULATION_CACHE); Double totalFitness = this.calculateTotalFitness(); int populationSize = this.cfg.getPopulationSize(); for (int i = 0; i < populationSize; i++) { // Pick the next best balanced node for the job. RouletteWheelSelectionJob job = new RouletteWheelSelectionJob(totalFitness, chromosomeKeyFitness); map.put(job, balancer.getBalancedNode(job, null)); } return map; }
/** {@inheritDoc} */ @Override public void send(Collection<? extends ComputeJob> jobs) { try { A.notNull(jobs, "jobs"); if (jobs.isEmpty()) throw new IgniteException("Empty jobs collection passed to send(...) method."); ComputeLoadBalancer balancer = ctx.loadBalancing().getLoadBalancer(ses, getTaskTopology()); for (ComputeJob job : jobs) { if (job == null) throw new IgniteException("Null job passed to send(...) method."); processMappedJobs(Collections.singletonMap(job, balancer.getBalancedNode(job, null))); } } catch (IgniteCheckedException e) { throw U.convertException(e); } } };
mapper.send(job, balancer.getBalancedNode(job, exclNodes));
/** {@inheritDoc} */ @Override public Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, Integer arg) { assert !subgrid.isEmpty() : "Subgrid cannot be empty."; Map<ComputeJobAdapter, ClusterNode> jobs = new HashMap<>(subgrid.size()); taskSes.setAttribute("1st", "1"); taskSes.setAttribute("2nd", "2"); Collection<UUID> assigned = new ArrayList<>(subgrid.size()); for (int i = 0; i < arg; i++) { ComputeJobAdapter job = new ComputeJobAdapter(1) { /** */ @TaskSessionResource private ComputeTaskSession jobSes; /** {@inheritDoc} */ @Override public Serializable execute() { assert jobSes != null; Integer arg = this.<Integer>argument(0); assert arg != null; return new GridSingleSplitNewNodesTestJobTarget().executeLoadTestJob(arg, jobSes); } }; ClusterNode node = balancer.getBalancedNode(job, null); assert node != null; assigned.add(node.id()); jobs.put(job, node); } taskSes.setAttribute("nodes", assigned); return jobs; }
ComputeJob job = job(r); ClusterNode n = lb.getBalancedNode(job, null);
ComputeJob job = job(c); ClusterNode n = lb.getBalancedNode(job, null);
/** {@inheritDoc} */ @Override public Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, @Nullable Void arg) { ComputeJob job = job(this.job, this.arg); ClusterNode node = lb.getBalancedNode(job, null); return Collections.singletonMap(job, node); }
/** {@inheritDoc} */ @Nullable @Override public Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, @Nullable Object arg) { assert job != null : "Job null-check must be performed in native platform."; if (!F.isEmpty(subgrid)) { Map<ComputeJob, ClusterNode> map = new HashMap<>(1, 1); map.put(job, lb.getBalancedNode(job, null)); return map; } else return Collections.emptyMap(); }
/** {@inheritDoc} */ @Nullable @Override public Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, @Nullable Object arg) { assert !F.isEmpty(jobs) : "Jobs emptiness must be checked in native platform."; if (!F.isEmpty(subgrid)) { Map<ComputeJob, ClusterNode> map = new HashMap<>(jobs.size(), 1); for (PlatformJob job : jobs) map.put(job, lb.getBalancedNode(job, null)); return map; } else return Collections.emptyMap(); }
/** {@inheritDoc} */ @Override public Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, GridifyArgument arg) { assert !subgrid.isEmpty() : "Subgrid should not be empty: " + subgrid; assert ignite != null : "Grid instance could not be injected"; assert balancer != null : "Load balancer could not be injected"; ComputeJob job = new GridifyJobAdapter(arg); ClusterNode node = balancer.getBalancedNode(job, Collections.<ClusterNode>singletonList(ignite.cluster().localNode())); if (node != null) { // Give preference to remote nodes. return Collections.singletonMap(job, node); } return Collections.singletonMap(job, balancer.getBalancedNode(job, null)); }
/** {@inheritDoc} */ @Override public Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, @Nullable Void arg) { try { JobMapper mapper = new JobMapper(args.size()); for (T jobArg : args) { ComputeJob job = job(this.job, jobArg); ClusterNode node = lb.getBalancedNode(job, null); mapper.map(job, node); } return mapper.map(); } catch (IgniteCheckedException e) { throw new IgniteException(e); } }
/** {@inheritDoc} */ @Override public Map<? extends ComputeJob, ClusterNode> map(List<ClusterNode> subgrid, @Nullable Void arg) { try { JobMapper mapper = new JobMapper(args.size()); for (T jobArg : args) { ComputeJob job = job(this.job, jobArg); ClusterNode node = lb.getBalancedNode(job, null); mapper.map(job, node); } return mapper.map(); } catch (IgniteCheckedException e) { throw new IgniteException(e); } }
/** {@inheritDoc} */ @Override public void send(Collection<? extends ComputeJob> jobs) { try { A.notNull(jobs, "jobs"); if (jobs.isEmpty()) throw new IgniteException("Empty jobs collection passed to send(...) method."); ComputeLoadBalancer balancer = ctx.loadBalancing().getLoadBalancer(ses, getTaskTopology()); for (ComputeJob job : jobs) { if (job == null) throw new IgniteException("Null job passed to send(...) method."); processMappedJobs(Collections.singletonMap(job, balancer.getBalancedNode(job, null))); } } catch (IgniteCheckedException e) { throw U.convertException(e); } } };