parameters: (block, vars_name, fuse_size=32.)
return_statement: return groups
docstring: coalesce tensor, get fused group
docstring_summary: coalesce tensor, get fused group
docstring_tokens: coalesce tensor get fused group
function: def get_fused_groups(block, vars_name, fuse_size=32.):
          """ coalesce tensor, get fused group """
          groups = []
          cur_size = 0.
          last_dtype = None
          for var_name in vars_name:
              real_var = block.var(var_name)
              var_size = get_var_size(real_var)
              if cur_size + var_size > fuse_size \
                      or len(groups) == 0 \
                      or real_var.dtype != last_dtype:
                  groups.append([real_var])
                  cur_size = var_size
                  last_dtype = real_var.dtype
              else:
                  groups[-1].append(real_var)
                  cur_size += var_size
          return groups
function_tokens: def get_fused_groups ( block , vars_name , fuse_size = 32. ) : groups = [ ] cur_size = 0. last_dtype = None for var_name in vars_name : real_var = block . var ( var_name ) var_size = get_var_size ( real_var ) if cur_size + var_size > fuse_size or len ( groups ) == 0 or real_var . dtype != last_dtype : groups . append ( [ real_var ] ) cur_size = var_size last_dtype = real_var . dtype else : groups [ - 1 ] . append ( real_var ) cur_size += var_size return groups