RuntimeError: torch.cat(): expected a non-empty list of Tensors when sequence parallel is enabled
Hi,

I found there are some bugs when sequence parallel is enabled and transformer engine is not used. Specifically, I received 

```
  File "/fsx/NeMo/nemo/collections/nlp/models/language_modeling/megatron_gpt_model.py", line 551, in training_step
    self.allreduce_sequence_parallel_gradients()
  File "/fsx/NeMo/nemo/collections/nlp/models/language_modeling/megatron_gpt_model.py", line 654, in allreduce_sequence_parallel_gradients
    coalesced = torch._utils._flatten_dense_tensors(grads)
  File "/usr/local/lib/python3.8/dist-packages/torch/_utils.py", line 459, in _flatten_dense_tensors
    return torch._C._nn.flatten_dense_tensors(tensors)
RuntimeError: torch.cat(): expected a non-empty list of Tensors
```
After some debugging, I found attribute `sequence_parallel` is not added to the layer norm because the apex layer norm implementation that NeMo uses does not support sequence parallel: https://github.com/NVIDIA/NeMo/blob/b0e5bf3627dbcfb3f4a72d73d3c5e92184d8b1f6/nemo/collections/nlp/modules/common/megatron/fused_layer_norm.py#L18-L19

Besides, is there any plan to add sequence parallel to `rmsnorm`?
