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


Java ResourceUsageMatcher类代码示例

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


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

示例1: ResourceUsageMatcherRunner

import org.apache.hadoop.mapred.gridmix.emulators.resourceusage.ResourceUsageMatcher; //导入依赖的package包/类
ResourceUsageMatcherRunner(final TaskInputOutputContext context, 
                           ResourceUsageMetrics metrics) {
  Configuration conf = context.getConfiguration();
  
  // set the resource calculator plugin
  Class<? extends ResourceCalculatorPlugin> clazz =
    conf.getClass(TTConfig.TT_RESOURCE_CALCULATOR_PLUGIN,
                  null, ResourceCalculatorPlugin.class);
  ResourceCalculatorPlugin plugin = 
    ResourceCalculatorPlugin.getResourceCalculatorPlugin(clazz, conf);
  
  // set the other parameters
  this.sleepTime = conf.getLong(SLEEP_CONFIG, DEFAULT_SLEEP_TIME);
  progress = new BoostingProgress(context);
  
  // instantiate a resource-usage-matcher
  matcher = new ResourceUsageMatcher();
  matcher.configure(conf, plugin, metrics, progress);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:20,代码来源:LoadJob.java

示例2: testResourceUsageMatcher

import org.apache.hadoop.mapred.gridmix.emulators.resourceusage.ResourceUsageMatcher; //导入依赖的package包/类
/**
 * Test {@link ResourceUsageMatcher}.
 */
@Test
public void testResourceUsageMatcher() throws Exception {
  ResourceUsageMatcher matcher = new ResourceUsageMatcher();
  Configuration conf = new Configuration();
  conf.setClass(ResourceUsageMatcher.RESOURCE_USAGE_EMULATION_PLUGINS, 
                TestResourceUsageEmulatorPlugin.class, 
                ResourceUsageEmulatorPlugin.class);
  long currentTime = System.currentTimeMillis();
  
  matcher.configure(conf, null, null, null);
  
  matcher.matchResourceUsage();
  
  String id = TestResourceUsageEmulatorPlugin.DEFAULT_IDENTIFIER;
  long result = 
    TestResourceUsageEmulatorPlugin.testInitialization(id, conf);
  assertTrue("Resource usage matcher failed to initialize the configured"
             + " plugin", result > currentTime);
  result = TestResourceUsageEmulatorPlugin.testEmulation(id, conf);
  assertTrue("Resource usage matcher failed to load and emulate the"
             + " configured plugin", result > currentTime);
  
  // test plugin order to first emulate cpu and then others
  conf.setStrings(ResourceUsageMatcher.RESOURCE_USAGE_EMULATION_PLUGINS, 
                  TestCpu.class.getName() + "," + TestOthers.class.getName());
  
  matcher.configure(conf, null, null, null);

  // test the initialization order
  long time1 = 
         TestResourceUsageEmulatorPlugin.testInitialization(TestCpu.ID, conf);
  long time2 = 
         TestResourceUsageEmulatorPlugin.testInitialization(TestOthers.ID, 
                                                            conf);
  assertTrue("Resource usage matcher failed to initialize the configured"
             + " plugins in order", time1 < time2);
  
  matcher.matchResourceUsage();

  // Note that the cpu usage emulator plugin is configured 1st and then the
  // others plugin.
  time1 = 
    TestResourceUsageEmulatorPlugin.testInitialization(TestCpu.ID, conf);
  time2 = 
    TestResourceUsageEmulatorPlugin.testInitialization(TestOthers.ID, 
                                                       conf);
  assertTrue("Resource usage matcher failed to load the configured plugins", 
             time1 < time2);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:53,代码来源:TestResourceUsageEmulators.java

示例3: testResourceUsageMatcherRunner

import org.apache.hadoop.mapred.gridmix.emulators.resourceusage.ResourceUsageMatcher; //导入依赖的package包/类
/**
 * Test {@link LoadJob.ResourceUsageMatcherRunner}.
 */
@Test
@SuppressWarnings("unchecked")
public void testResourceUsageMatcherRunner() throws Exception {
  Configuration conf = new Configuration();
  FakeProgressive progress = new FakeProgressive();
  
  // set the resource calculator plugin
  conf.setClass(TTConfig.TT_RESOURCE_CALCULATOR_PLUGIN,
                DummyResourceCalculatorPlugin.class, 
                ResourceCalculatorPlugin.class);
  // set the resources
  // set the resource implementation class
  conf.setClass(ResourceUsageMatcher.RESOURCE_USAGE_EMULATION_PLUGINS, 
                TestResourceUsageEmulatorPlugin.class, 
                ResourceUsageEmulatorPlugin.class);
  
  long currentTime = System.currentTimeMillis();
  
  // initialize the matcher class
  TaskAttemptID id = new TaskAttemptID("test", 1, TaskType.MAP, 1, 1);
  StatusReporter reporter = new DummyReporter(progress);
  TaskInputOutputContext context = 
    new MapContextImpl(conf, id, null, null, null, reporter, null);
  FakeResourceUsageMatcherRunner matcher = 
    new FakeResourceUsageMatcherRunner(context, null);
  
  // check if the matcher initialized the plugin
  String identifier = TestResourceUsageEmulatorPlugin.DEFAULT_IDENTIFIER;
  long initTime = 
    TestResourceUsageEmulatorPlugin.testInitialization(identifier, conf);
  assertTrue("ResourceUsageMatcherRunner failed to initialize the"
             + " configured plugin", initTime > currentTime);
  
  // check the progress
  assertEquals("Progress mismatch in ResourceUsageMatcherRunner", 
               0, progress.getProgress(), 0D);
  
  // call match() and check progress
  progress.setProgress(0.01f);
  currentTime = System.currentTimeMillis();
  matcher.test();
  long emulateTime = 
    TestResourceUsageEmulatorPlugin.testEmulation(identifier, conf);
  assertTrue("ProgressBasedResourceUsageMatcher failed to load and emulate"
             + " the configured plugin", emulateTime > currentTime);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:50,代码来源:TestResourceUsageEmulators.java


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