Search in sources :

Example 1 with ResourceManager

use of com.google.devtools.build.lib.actions.ResourceManager in project bazel by bazelbuild.

the class StandaloneSpawnStrategyTest method setUp.

@Before
public final void setUp() throws Exception {
    Path testRoot = createTestRoot();
    Path workspaceDir = testRoot.getRelative("workspace-name");
    workspaceDir.createDirectory();
    // setup output base & directories
    Path outputBase = testRoot.getRelative("outputBase");
    outputBase.createDirectory();
    BlazeDirectories directories = new BlazeDirectories(outputBase, outputBase, workspaceDir, "mock-product-name");
    // This call implicitly symlinks the integration bin tools into the exec root.
    IntegrationMock.get().getIntegrationBinTools(directories);
    OptionsParser optionsParser = OptionsParser.newOptionsParser(ExecutionOptions.class);
    optionsParser.parse("--verbose_failures");
    EventBus bus = new EventBus();
    ResourceManager resourceManager = ResourceManager.instanceForTestingOnly();
    resourceManager.setAvailableResources(ResourceSet.create(/*memoryMb=*/
    1, /*cpuUsage=*/
    1, /*ioUsage=*/
    1, /*localTestCount=*/
    1));
    this.executor = new BlazeExecutor(directories.getExecRoot(), reporter, bus, BlazeClock.instance(), optionsParser, ImmutableList.<ActionContext>of(), ImmutableMap.<String, SpawnActionContext>of("", new StandaloneSpawnStrategy(directories.getExecRoot(), false, "mock-product-name", resourceManager)), ImmutableList.<ActionContextProvider>of());
    executor.getExecRoot().createDirectory();
}
Also used : Path(com.google.devtools.build.lib.vfs.Path) BlazeDirectories(com.google.devtools.build.lib.analysis.BlazeDirectories) BlazeExecutor(com.google.devtools.build.lib.exec.BlazeExecutor) EventBus(com.google.common.eventbus.EventBus) ResourceManager(com.google.devtools.build.lib.actions.ResourceManager) OptionsParser(com.google.devtools.common.options.OptionsParser) ActionContext(com.google.devtools.build.lib.actions.Executor.ActionContext) SpawnActionContext(com.google.devtools.build.lib.actions.SpawnActionContext) SpawnActionContext(com.google.devtools.build.lib.actions.SpawnActionContext) ActionContextProvider(com.google.devtools.build.lib.exec.ActionContextProvider) Before(org.junit.Before)

Example 2 with ResourceManager

use of com.google.devtools.build.lib.actions.ResourceManager in project bazel by bazelbuild.

the class ExecutionTool method configureResourceManager.

private void configureResourceManager(BuildRequest request) {
    ResourceManager resourceMgr = ResourceManager.instance();
    ExecutionOptions options = request.getOptions(ExecutionOptions.class);
    ResourceSet resources;
    if (options.availableResources != null) {
        resources = options.availableResources;
        resourceMgr.setRamUtilizationPercentage(100);
    } else {
        resources = LocalHostCapacity.getLocalHostCapacity();
        resourceMgr.setRamUtilizationPercentage(options.ramUtilizationPercentage);
    }
    resourceMgr.setAvailableResources(ResourceSet.create(resources.getMemoryMb(), resources.getCpuUsage(), resources.getIoUsage(), request.getExecutionOptions().usingLocalTestJobs() ? request.getExecutionOptions().localTestJobs : Integer.MAX_VALUE));
}
Also used : ExecutionOptions(com.google.devtools.build.lib.exec.ExecutionOptions) ResourceManager(com.google.devtools.build.lib.actions.ResourceManager) ResourceSet(com.google.devtools.build.lib.actions.ResourceSet)

Aggregations

ResourceManager (com.google.devtools.build.lib.actions.ResourceManager)2 EventBus (com.google.common.eventbus.EventBus)1 ActionContext (com.google.devtools.build.lib.actions.Executor.ActionContext)1 ResourceSet (com.google.devtools.build.lib.actions.ResourceSet)1 SpawnActionContext (com.google.devtools.build.lib.actions.SpawnActionContext)1 BlazeDirectories (com.google.devtools.build.lib.analysis.BlazeDirectories)1 ActionContextProvider (com.google.devtools.build.lib.exec.ActionContextProvider)1 BlazeExecutor (com.google.devtools.build.lib.exec.BlazeExecutor)1 ExecutionOptions (com.google.devtools.build.lib.exec.ExecutionOptions)1 Path (com.google.devtools.build.lib.vfs.Path)1 OptionsParser (com.google.devtools.common.options.OptionsParser)1 Before (org.junit.Before)1