code: def swap_in_optimizer_state(self, parameter, async_parameter):
      assert parameter is not None
      assert self.swap_ops[SYNC_SWAP_IN] is None
  
      self._flush_gradient_swapper(self.gradient_swapper)
  
      self._start_timer(SWAP_IN_STATE_TIMER)
  
      if self.swap_ops[ASYNC_SWAP_IN]:
          assert self.swap_ops[ASYNC_SWAP_IN].is_parameter(parameter)
          self.swap_ops[SYNC_SWAP_IN] = self.swap_ops[ASYNC_SWAP_IN]
          self.swap_ops[ASYNC_SWAP_IN] = None
      else:
          self.swap_ops[SYNC_SWAP_IN] = self._swap_in_optimizer_state(
              aio_handle=self.read_aio_handle, parameter=parameter
          )
  
      if self.swap_ops[SYNC_SWAP_IN]:
          self.swap_ops[SYNC_SWAP_IN].wait()
  
      if self.async_swap_in and async_parameter is not None:
          assert self.swap_ops[ASYNC_SWAP_IN] is None
          self.swap_ops[ASYNC_SWAP_IN] = self._swap_in_optimizer_state(
              aio_handle=self.read_aio_handle, parameter=async_parameter
          )
  
      self._stop_timer(SWAP_IN_STATE_TIMER)
      self.timer_names.add(SWAP_IN_STATE_TIMER)
  
imports: from deepspeed.ops.aio import AsyncIOBuilder
  from deepspeed import comm
  from deepspeed.runtime.swap_tensor.constants import *
  from deepspeed.runtime.swap_tensor.utils import swap_in_tensors, swap_out_tensors, print_object
  from deepspeed.runtime.swap_tensor.async_swapper import AsyncTensorSwapper
  from deepspeed.runtime.swap_tensor.utils import get_sized_buffer
  from deepspeed.runtime.swap_tensor.optimizer_utils import OptimizerSwapper
label_desc: Use image node_id 5 for calling the PipelinedOptimizerSwapper obj's underlying member method code with example usage: obj.swap_in_optimizer_state(parameter, async_parameter) without return types