'Signal the corresponding end of a block of repeated computation
(at the end of a loop).  This operation can be used to help the
compiler optimize performance, but has no direct effect on
calculations.  It must be preceded by a corresponding Backend.begin()
call.
Arguments:
block (Block.attr): identifies the type of computation being worked
on based on Block attribute specified
identifier (int): unique identifier for this particular iteration
of the block.  Will typically be something like
epoch number, mini-batch number, and so forth.
See Also:
:py:func:`~neon.backends.backend.Backend.begin`'

def end(self, block, identifier):

    pass
