class_docstr: Test the Regnet FSDP model in comparison with the DDP Regnet
  to verify that both converge to the same losses
class_docstr_tok: ["Test","the","Regnet","FSDP","model","in","comparison","with","the","DDP","Regnet","to","verify","that","both","converge","to","the","same","losses"]
code: def run_pretraining(
      with_fsdp: bool,
      with_checkpointing: bool,
      with_larc: bool,
      output_file_name: str,
  ):
      with with_temp_files(count=1) as sync_file:
          mp.spawn(
              TestRegnetFSDP._pretraining_worker,
              (
                  with_fsdp,
                  with_checkpointing,
                  with_larc,
                  sync_file,
                  output_file_name,
              ),
              nprocs=2,
          )
  
file_path: vissl/tests/test_regnet_fsdp.py
imports: import pickle
  import unittest
  import torch
  import torch.multiprocessing
  from classy_vision.optim import build_optimizer
  from torch.nn.parallel import DistributedDataParallel
  from vissl.losses.swav_loss import SwAVLoss
  from vissl.models import build_model
  from vissl.optimizers import *
  from vissl.utils.fsdp_utils import fsdp_wrapper
  from vissl.utils.hydra_config import compose_hydra_configuration, convert_to_attrdict
  from vissl.utils.test_utils import gpu_test, init_distributed_on_file, with_temp_files
label_desc: Use image node_id 3 for calling the TestRegnetFSDP obj's underlying member method code with example usage: obj.run_pretraining(with_fsdp, with_checkpointing, with_larc, output_file_name) without return types