#NEWLINE# def funcs_allclose( f , backends , backend_tensors , rtol = 0 , atol = 1e-07 ) : #NEWLINE# #INDENT# '\n    For each backends, calls f with its tensors, and assert the results to be\n    all close.\n\n    Arguments:\n        f (lambda): Usage f(backend, *tensors)\n        backend (Backend or numpy): one of (np, NervanaGPU, NervanaCPU)\n        tensors (list): list of tensors\n        rtol (float, optional): Relative tolerance.\n        atol (float, optional): Absolute tolerance.\n\n    Returns:\n        bool: If the results of fs is close\n    ' #NEWLINE# results = [ ] #NEWLINE# for ( backend , tensors ) in zip ( backends , backend_tensors ) : #NEWLINE# #INDENT# results . append ( call_func ( f , backend , tensors ) ) #NEWLINE# #UNINDENT# return tensors_allclose ( results , rtol = rtol , atol = atol )