class_docstr: Test the VISSL SwinT implementation against the official implementation of:
  https://github.com/microsoft/Swin-Transformer/blob/main/models/swin_transformer.py
  
  As of today, April 2022, the VISSL implementation is more flexible and allows
  input multiple resolutions without requiring up-sampling / down-sampling.
code: def test_vissl_implementation_against_official(self) -> None:
      with torch.no_grad():
          torch.manual_seed(0)
          torch.cuda.manual_seed(0)
          x = torch.randn(size=(2, 3, 224, 224)).cuda()
  
          ref_model = self.build_eval_model(
              config=self.official_swin_transformer_config(), seed=0
          )
          vissl_model = self.build_eval_model(
              config=self.vissl_swin_transformer_config(),
              seed=0,
          )
          ref = ref_model.trunk(x)[0]
          out = vissl_model.trunk(x)[0]
          self.assertEqual(ref.shape, out.shape)
          self.assertTrue(torch.allclose(ref, out, atol=1e-5))
  
file_path: vissl/tests/test_swin_t.py
imports: import unittest
  import torch
  from vissl.models import build_model
  from vissl.utils.hydra_config import compose_hydra_configuration, convert_to_attrdict
  from vissl.utils.test_utils import gpu_test
label_desc: Use image node_id 4 for calling the TestSwinT obj's underlying member method code with example usage: obj.test_vissl_implementation_against_official() without return types