class_docstr: An abstract key-value store interface for data parallel training.
class_docstr_tok: ["An","abstract","key-value","store","interface","for","data","parallel","training","."]
docstr: Performs push and pull a single value or a sequence of values from the store.
  
  This function is coalesced form of push and pull operations.
  
  `value` is pushed to the kvstore server for summation with the specified keys,
  and the results are pulled from the server to `out`. If `out` is not specified
  the pulled values are written to `value`.
  
  Note that for allreduce based approaches such as horovod, there is no notion of
  server or store. This function performs allreduce.
  
  Parameters
  ----------
  key : str or int
      The key.
  
  value : NDArray, or list of NDArray
      Values corresponding to the keys.
  
  out: NDArray, or list of NDArray
      Values corresponding to the key.
  
  priority : int, optional
      The priority of the operation.
      Higher priority operations are likely to be executed before other actions.
docstr_tok: ["Performs","push","and","pull","a","single","value","or","a","sequence","of","values","from","the","store",".","This","function","is","coalesced","form","of","push","and","pull","operations",".","`","value","`","is","pushed","to","the","kvstore","server","for","summation","with","the","specified","keys",",","and","the","results","are","pulled","from","the","server","to","`","out","`",".","If","`","out","`","is","not","specified","the","pulled","values","are","written","to","`","value","`",".","Note","that","for","allreduce","based","approaches","such","as","horovod",",","there","is","no","notion","of","server","or","store",".","This","function","performs","allreduce",".","Parameters","--","--","--","--","--","key",":","str","or","int","The","key",".","value",":","NDArray",",","or","list","of","NDArray","Values","corresponding","to","the","keys",".","out",":","NDArray",",","or","list","of","NDArray","Values","corresponding","to","the","key",".","priority",":","int",",","optional","The","priority","of","the","operation",".","Higher","priority","operations","are","likely","to","be","executed","before","other","actions","."]
code: def pushpull(self, key, value, out=None, priority=0):
      """Performs push and pull a single value or a sequence of values from the store.
  
      This function is coalesced form of push and pull operations.
  
      `value` is pushed to the kvstore server for summation with the specified keys,
      and the results are pulled from the server to `out`. If `out` is not specified
      the pulled values are written to `value`.
  
      Note that for allreduce based approaches such as horovod, there is no notion of
      server or store. This function performs allreduce.
  
      Parameters
      ----------
      key : str or int
          The key.
  
      value : NDArray, or list of NDArray
          Values corresponding to the keys.
  
      out: NDArray, or list of NDArray
          Values corresponding to the key.
  
      priority : int, optional
          The priority of the operation.
          Higher priority operations are likely to be executed before other actions.
      """
      raise NotImplementedError()
  
imports: from array import array
  import ctypes
  import warnings
  from ..ndarray import NDArray
  from ..base import _LIB, c_str_array, c_handle_array, c_array, c_array_buf, c_str
  from ..base import check_call, string_types
  from ..base import KVStoreHandle
  from ..profiler import set_kvstore_handle
label_desc: Use image node_id 2 for calling the KVStoreBase obj's underlying member method code with example usage: obj.pushpull(key, value, out, priority) without return types