code: def swap_out_partitioned_params(
      self, dst_fp16_params, src_fp32_params
  ):
      assert (
          self.partitioned_swap_buffer is not None
      ), f"partitioned swap buffers for fp16 params not initialized"
      assert (
          self.partitioned_swap_pool is not None
      ), f"partitioned swap pool for fp16 params not initialized"
      assert len(dst_fp16_params) == len(
          src_fp32_params
      ), f"mismatch in number of fp16 params {len(dst_fp16_params)} and fp32 params {len(src_fp32_params)}"
  
      fp16_swap_paths = self._get_swap_paths(
          dst_fp16_params, must_exist=True
      )
      self.synchronize_writes()
      self.partitioned_swap_pool.reset()
      for i, fp32_tensor in enumerate(src_fp32_params):
          swap_tensor, _ = self.partitioned_swap_pool.insert_tensor(
              fp32_tensor,
              fp16_swap_paths[i],
              self._io_aligned_numel(fp32_tensor.numel()),
          )
          assert swap_tensor is not None
          dst_fp16_params[
              i
          ].ds_tensor.status = PartitionedParamStatus.AVAILABLE
  
      self.partitioned_swap_pool.swap_out(self.aio_write_handle)
  
      for param in dst_fp16_params:
          param.ds_tensor.status = PartitionedParamStatus.NOT_AVAILABLE
  
imports: import os
  import shutil
  from enum import Enum
  import torch
  from deepspeed import comm
  from deepspeed.accelerator import get_accelerator
  from deepspeed.ops.op_builder import AsyncIOBuilder
  from .constants import *
  from .utils import swap_in_tensors, swap_out_tensors, MIN_AIO_BYTES, AIO_ALIGNED_BYTES, print_object, SwapBufferPool
label_desc: Use image node_id 24 for calling the AsyncPartitionedParameterSwapper obj's underlying member method code with example usage: obj.swap_out_partitioned_params(dst_fp16_params, src_fp32_params) without return types