# {py:mod}`evorl.distributed.comm` ```{py:module} evorl.distributed.comm ``` ```{autodoc2-docstring} evorl.distributed.comm :parser: autodoc2_docstrings_parser :allowtitles: ``` ## Module Contents ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`all_gather ` - ```{autodoc2-docstring} evorl.distributed.comm.all_gather :parser: autodoc2_docstrings_parser :summary: ``` * - {py:obj}`get_global_ranks ` - ```{autodoc2-docstring} evorl.distributed.comm.get_global_ranks :parser: autodoc2_docstrings_parser :summary: ``` * - {py:obj}`get_process_id ` - ```{autodoc2-docstring} evorl.distributed.comm.get_process_id :parser: autodoc2_docstrings_parser :summary: ``` * - {py:obj}`is_dist_initialized ` - ```{autodoc2-docstring} evorl.distributed.comm.is_dist_initialized :parser: autodoc2_docstrings_parser :summary: ``` * - {py:obj}`pmax ` - ```{autodoc2-docstring} evorl.distributed.comm.pmax :parser: autodoc2_docstrings_parser :summary: ``` * - {py:obj}`pmean ` - ```{autodoc2-docstring} evorl.distributed.comm.pmean :parser: autodoc2_docstrings_parser :summary: ``` * - {py:obj}`pmin ` - ```{autodoc2-docstring} evorl.distributed.comm.pmin :parser: autodoc2_docstrings_parser :summary: ``` * - {py:obj}`psum ` - ```{autodoc2-docstring} evorl.distributed.comm.psum :parser: autodoc2_docstrings_parser :summary: ``` * - {py:obj}`split_key_to_devices ` - ```{autodoc2-docstring} evorl.distributed.comm.split_key_to_devices :parser: autodoc2_docstrings_parser :summary: ``` ```` ### API ````{py:function} all_gather(x, axis_name: str | None = None, **kwargs) :canonical: evorl.distributed.comm.all_gather ```{autodoc2-docstring} evorl.distributed.comm.all_gather :parser: autodoc2_docstrings_parser ``` ```` ````{py:function} get_global_ranks() :canonical: evorl.distributed.comm.get_global_ranks ```{autodoc2-docstring} evorl.distributed.comm.get_global_ranks :parser: autodoc2_docstrings_parser ``` ```` ````{py:function} get_process_id() :canonical: evorl.distributed.comm.get_process_id ```{autodoc2-docstring} evorl.distributed.comm.get_process_id :parser: autodoc2_docstrings_parser ``` ```` ````{py:function} is_dist_initialized() :canonical: evorl.distributed.comm.is_dist_initialized ```{autodoc2-docstring} evorl.distributed.comm.is_dist_initialized :parser: autodoc2_docstrings_parser ``` ```` ````{py:function} pmax(x, axis_name: str | None = None) :canonical: evorl.distributed.comm.pmax ```{autodoc2-docstring} evorl.distributed.comm.pmax :parser: autodoc2_docstrings_parser ``` ```` ````{py:function} pmean(x, axis_name: str | None = None) :canonical: evorl.distributed.comm.pmean ```{autodoc2-docstring} evorl.distributed.comm.pmean :parser: autodoc2_docstrings_parser ``` ```` ````{py:function} pmin(x, axis_name: str | None = None) :canonical: evorl.distributed.comm.pmin ```{autodoc2-docstring} evorl.distributed.comm.pmin :parser: autodoc2_docstrings_parser ``` ```` ````{py:function} psum(x, axis_name: str | None = None) :canonical: evorl.distributed.comm.psum ```{autodoc2-docstring} evorl.distributed.comm.psum :parser: autodoc2_docstrings_parser ``` ```` ````{py:function} split_key_to_devices(key: chex.PRNGKey, devices: collections.abc.Sequence[jax.Device]) :canonical: evorl.distributed.comm.split_key_to_devices ```{autodoc2-docstring} evorl.distributed.comm.split_key_to_devices :parser: autodoc2_docstrings_parser ``` ````