class_docstr: Base test class and used for CPU case.
code: def test_shared_params_pnorm_after_step(self):
      # incorrect parameter sharing is likely to cause problems after an
      # optimization step
      module = self._get_shared_params_transformer()
      ref_pnorm_after_step = self._get_pnorm_after_step(module)
  
      module = self._get_shared_params_transformer()  # recreate
      flat_module = FlattenParamsWrapper(module)
      flat_pnorm_after_step = self._get_pnorm_after_step(flat_module)
  
      torch.testing.assert_allclose(
          ref_pnorm_after_step, flat_pnorm_after_step
      )
  
imports: from collections import OrderedDict
  import unittest
  import torch
  from fairscale.fair_dev.testing.testing import objects_are_equal
  from fairscale.nn import FlattenParamsWrapper
label_desc: Use image node_id 20 for calling the TestFlattenParams obj's underlying member method code with example usage: obj.test_shared_params_pnorm_after_step() without return types