class StashStashPop(nn.Module):
          def forward(self, input):
              yield stash('alice', f_alice(input))
              yield stash('bob', f_bob(input))
              carol = yield pop('carol')
              return input + carol
Every skip tensor must be associated with exactly one pair of
   stash and pop. "Pipe" checks this restriction automatically
   when wrapping a module. You can also check the restriction by
   "verify_skippables()" without "Pipe".
Return type:
      Callable[[Type[Module]], Type[Skippable]]
class torch.distributed.pipeline.sync.skip.skippable.stash(name, tensor)
The command to stash a skip tensor.
  def forward(self, input):
      yield stash('name', input)
      return f(input)

Parameters:
      * name (str) -- name of skip tensor
  * **input** (*torch.Tensor** or **None*) -- tensor to pass to
    the skip connection

class torch.distributed.pipeline.sync.skip.skippable.pop(name)