Package org.apache.uima.ducc.rm.scheduler

Examples of org.apache.uima.ducc.rm.scheduler.ResourceClass


        //
        boolean status = true;       
       
        int max_processes = 0;
         int max_machines = 0
        ResourceClass rescl = scheduler.getResourceClass(className);
        j.setResourceClass(rescl);

        if ( rescl == null ) {
            // ph darn, we can't continue past this point
            refuse(j, "Cannot find priority class " + className + " for job");
            return false;
        }

//         if ( logger.isDebug() ) {
//             logger.debug(methodName, j.getId(),"sharesMax", si.getSharesMax());
//                        logger.debug(methodName, j.getId(),"getInstancesCount", si.getInstancesCount());
//                        logger.debug(methodName, j.getId(), "rescl.getMaxProcesses", rescl.getMaxProcesses());
//                        logger.debug(methodName, j.getId(), "rescl.getMaxMachines", rescl.getMaxMachines());
//         }

        switch ( job.getDuccType() ) {
          case Service:
          case Pop:
          case Job:             
              // instance and share count are a function of the class
              switch ( rescl.getPolicy() ) {
                  case FAIR_SHARE:
                      max_processes    = toInt(si.getSharesMax(), DEFAULT_PROCESSES);
                      max_processes    = Math.min(rescl.getMaxProcesses(), max_processes);
                      j.setMaxShares(max_processes);
                      j.setNInstances(-1);
                      break;
                     
                  case FIXED_SHARE:
                      max_processes   = toInt(si.getSharesMax(), DEFAULT_INSTANCES);
                      j.setMaxShares(max_processes);
                      j.setNInstances(max_processes);
                      break;
                     
                  case RESERVE:
                      max_machines   = toInt(si.getSharesMax(), DEFAULT_INSTANCES);
                      j.setMaxShares(max_machines);
                      j.setNInstances(max_machines);
                      break;
              }
             
              status = receiveExecutable(j, job);
              logger.trace(methodName, j.getId(), "Serivce, Pop, or Job arrives, accepted:", status);
              break;
          case Reservation:
              switch ( rescl.getPolicy() ) {
                  case FIXED_SHARE:
                      max_machines   = toInt(si.getInstancesCount(), DEFAULT_INSTANCES);
                      break;
                  case RESERVE:
                      max_machines   = toInt(si.getInstancesCount(), DEFAULT_INSTANCES);
View Full Code Here

TOP

Related Classes of org.apache.uima.ducc.rm.scheduler.ResourceClass

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.