当前位置: 首页>>代码示例>>Java>>正文


Java PreemptionMessage类代码示例

本文整理汇总了Java中org.apache.hadoop.yarn.api.records.PreemptionMessage的典型用法代码示例。如果您正苦于以下问题:Java PreemptionMessage类的具体用法?Java PreemptionMessage怎么用?Java PreemptionMessage使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


PreemptionMessage类属于org.apache.hadoop.yarn.api.records包,在下文中一共展示了PreemptionMessage类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: newAllocateResponse

import org.apache.hadoop.yarn.api.records.PreemptionMessage; //导入依赖的package包/类
public static AllocateResponse newAllocateResponse(int responseId,
    List<ContainerStatus> completedContainers,
    List<Container> allocatedContainers, List<NodeReport> updatedNodes,
    Resource availResources, AMCommand command, int numClusterNodes,
    PreemptionMessage preempt) {
  AllocateResponse response = recordFactory
      .newRecordInstance(AllocateResponse.class);
  response.setNumClusterNodes(numClusterNodes);
  response.setResponseId(responseId);
  response.setCompletedContainersStatuses(completedContainers);
  response.setAllocatedContainers(allocatedContainers);
  response.setUpdatedNodes(updatedNodes);
  response.setAvailableResources(availResources);
  response.setAMCommand(command);
  response.setPreemptionMessage(preempt);

  return response;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:19,代码来源:BuilderUtils.java

示例2: newInstance

import org.apache.hadoop.yarn.api.records.PreemptionMessage; //导入依赖的package包/类
@Public
@Stable
public static AllocateResponse newInstance(int responseId,
    List<ContainerStatus> completedContainers,
    List<Container> allocatedContainers, List<NodeReport> updatedNodes,
    Resource availResources, AMCommand command, int numClusterNodes,
    PreemptionMessage preempt, List<NMToken> nmTokens) {
  AllocateResponse response = Records.newRecord(AllocateResponse.class);
  response.setNumClusterNodes(numClusterNodes);
  response.setResponseId(responseId);
  response.setCompletedContainersStatuses(completedContainers);
  response.setAllocatedContainers(allocatedContainers);
  response.setUpdatedNodes(updatedNodes);
  response.setAvailableResources(availResources);
  response.setAMCommand(command);
  response.setPreemptionMessage(preempt);
  response.setNMTokens(nmTokens);
  return response;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:20,代码来源:AllocateResponse.java

示例3: getPreemptionMessage

import org.apache.hadoop.yarn.api.records.PreemptionMessage; //导入依赖的package包/类
private PreemptionMessage getPreemptionMessage(boolean strictContract,
    boolean contract, final ContainerId container) {
  PreemptionMessage preemptionMessage = recordFactory
      .newRecordInstance(PreemptionMessage.class);
  Set<PreemptionContainer> cntrs = new HashSet<PreemptionContainer>();
  PreemptionContainer preemptContainer = recordFactory
      .newRecordInstance(PreemptionContainer.class);
  preemptContainer.setId(container);
  cntrs.add(preemptContainer);
  if (strictContract) {
    StrictPreemptionContract set = recordFactory
        .newRecordInstance(StrictPreemptionContract.class);
    set.setContainers(cntrs);
    preemptionMessage.setStrictContract(set);
  }
  if (contract) {
    PreemptionContract preemptContract = recordFactory
        .newRecordInstance(PreemptionContract.class);
    preemptContract.setContainers(cntrs);
    preemptionMessage.setContract(preemptContract);
  }
  return preemptionMessage;
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:24,代码来源:TestKillAMPreemptionPolicy.java

示例4: validatePreemption

import org.apache.hadoop.yarn.api.records.PreemptionMessage; //导入依赖的package包/类
private List<TaskAttemptId> validatePreemption(PreemptionMessage pM,
  CheckpointAMPreemptionPolicy policy, int supposedMemPreemption) {
  Resource effectivelyPreempted = Resource.newInstance(0, 0);

  List<TaskAttemptId> preempting = new ArrayList<TaskAttemptId>();

  for (Map.Entry<ContainerId, TaskAttemptId> ent :
      assignedContainers.entrySet()) {
    if (policy.isPreempted(ent.getValue())) {
      Resources.addTo(effectivelyPreempted,contToResourceMap.get(ent.getKey()));
      // preempt only reducers
      if (policy.isPreempted(ent.getValue())){
        assertEquals(TaskType.REDUCE, ent.getValue().getTaskId().getTaskType());
        preempting.add(ent.getValue());
      }
    }
  }

  // preempt enough
  assert (effectivelyPreempted.getMemory() >= supposedMemPreemption)
    : " preempted: " + effectivelyPreempted.getMemory();

  // preempt not too much enough
  assert effectivelyPreempted.getMemory() <= supposedMemPreemption + minAlloc;
  return preempting;
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:27,代码来源:TestCheckpointPreemptionPolicy.java

示例5: generatePreemptionMessage

import org.apache.hadoop.yarn.api.records.PreemptionMessage; //导入依赖的package包/类
private PreemptionMessage generatePreemptionMessage(
    Set<ContainerId> containerToPreempt,
    HashMap<ContainerId, Resource> resPerCont,
    Resource minimumAllocation, boolean strict) {

  Set<ContainerId> currentContPreemption = Collections.unmodifiableSet(
      new HashSet<ContainerId>(containerToPreempt));
  containerToPreempt.clear();
  Resource tot = Resource.newInstance(0, 0);
  for(ContainerId c : currentContPreemption){
    Resources.addTo(tot,
        resPerCont.get(c));
  }
  int numCont = (int) Math.ceil(tot.getMemory() /
            (double) minimumAllocation.getMemory());
  ResourceRequest rr = ResourceRequest.newInstance(
      Priority.newInstance(0), ResourceRequest.ANY,
      minimumAllocation, numCont);
  if (strict) {
    return generatePreemptionMessage(new Allocation(null, null,
                currentContPreemption, null, null));
  }
  return generatePreemptionMessage(new Allocation(null, null,
                        null, currentContPreemption,
                        Collections.singletonList(rr)));
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:27,代码来源:TestCheckpointPreemptionPolicy.java

示例6: getPreemptionMessage

import org.apache.hadoop.yarn.api.records.PreemptionMessage; //导入依赖的package包/类
@Override
public synchronized PreemptionMessage getPreemptionMessage() {
  AllocateResponseProtoOrBuilder p = viaProto ? proto : builder;
  if (this.preempt != null) {
    return this.preempt;
  }
  if (!p.hasPreempt()) {
    return null;
  }
  this.preempt = convertFromProtoFormat(p.getPreempt());
  return this.preempt;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:13,代码来源:AllocateResponsePBImpl.java

示例7: setPreemptionMessage

import org.apache.hadoop.yarn.api.records.PreemptionMessage; //导入依赖的package包/类
@Override
public synchronized void setPreemptionMessage(PreemptionMessage preempt) {
  maybeInitBuilder();
  if (null == preempt) {
    builder.clearPreempt();
  }
  this.preempt = preempt;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:9,代码来源:AllocateResponsePBImpl.java


注:本文中的org.apache.hadoop.yarn.api.records.PreemptionMessage类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。