Uploaded image for project: 'Hadoop YARN'
  1. Hadoop YARN
  2. YARN-9096

Some GpuResourcePlugin and ResourcePluginManager methods are synchronized unnecessarily

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 3.3.0, 3.2.1, 3.1.3
    • None
    • None

    Description

      These methods are not used concurrently, they are part of the initialization code of NM that happens from one thread.

      This is the list of the call hierarchies: 

      1. GpuResourcePlugin.initialize + ResourcePluginManager.initialize

       

      GpuResourcePlugin.initialize(Context) (org.apache.hadoop.yarn.server.nodemanager.containermanager.resourceplugin.gpu) ResourcePluginManager.initialize(Context) (org.apache.hadoop.yarn.server.nodemanager.containermanager.resourceplugin) NodeManager.serviceInit(Configuration) (org.apache.hadoop.yarn.server.nodemanager)

       

       

      2. GpuResourcePlugin.createResourceHandler: 

       

      GpuResourcePlugin.createResourceHandler(Context, CGroupsHandler, PrivilegedOperationExecutor) (org.apache.hadoop.yarn.server.nodemanager.containermanager.resourceplugin.gpu) ResourceHandlerModule.addHandlersFromConfiguredResourcePlugins(List, Configuration, Context) (org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.resources) ResourceHandlerModule.initializeConfiguredResourceHandlerChain(Configuration, Context) (org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.resources) ResourceHandlerModule.getConfiguredResourceHandlerChain(Configuration, Context) (org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.resources) ContainerScheduler.serviceInit(Configuration) (org.apache.hadoop.yarn.server.nodemanager.containermanager.scheduler) LinuxContainerExecutor.init(Context) (org.apache.hadoop.yarn.server.nodemanager)
      

       

      3. GpuResourcePlugin.getNodeResourceHandlerInstance: 

       

      GpuResourcePlugin.getNodeResourceHandlerInstance() (org.apache.hadoop.yarn.server.nodemanager.containermanager.resourceplugin.gpu)
      NodeStatusUpdaterImpl.updateConfiguredResourcesViaPlugins(Resource)(2 usages) (org.apache.hadoop.yarn.server.nodemanager)
      NodeStatusUpdaterImpl.serviceInit(Configuration) (org.apache.hadoop.yarn.server.nodemanager)
      

      Attachments

        1. YARN-9096.001.patch
          4 kB
          Szilard Nemeth
        2. YARN-9096.002.patch
          3 kB
          Szilard Nemeth
        3. YARN-9096.002.patch
          3 kB
          Adam Antal

        Activity

          People

            shuzirra Gergely Pollák
            snemeth Szilard Nemeth
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: