API for surfacing active SPMD axis names
See original GitHub issueFor example,
@partial(pmap, axis_name="i")
def foo():
@partial(pmap, axis_name="j")
def bar():
print(lax.axis_names()) # ("i", "j")
The semantics would be “the set of axis names currently valid inside a psum
or axis_index
”; the order would be the pmap nesting order.
cc @dmrd
Issue Analytics
- State:
- Created 3 years ago
- Comments:7 (5 by maintainers)
Top Results From Across the Web
Introduction — Advanced Ray Tracing documentation
The Embree API is a low-level C99 ray tracing API which can be used to construct 3D scenes and perform ray queries of...
Read more >(PDF) Active Pharmaceutical Ingredients and Aquatic Organisms
The presence of active pharmaceuticals ingredients (APIs) in aquatic systems has led in recent years to a burgeoning literature examining ...
Read more >Introduction to MPI
Message passing (and MPI) is for MIMD/SPMD parallelism. ... Communication and synchronization are combined; Push model (active data transfer). Process 0.
Read more >Active Pharmaceutical Ingredients and Aquatic Organisms - EPA
The presence of active pharmaceuticals ingredients (APIs) in aquatic systems has led in recent ... toxicity in surface waters, and whole effluent toxicity....
Read more >Developer and Optimization Guide for Intel® Processor ...
The document also provides specific API guidance for using the latest graphics APIs on Intel Processor Graphics Gen11.
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Regarding implementation, I think we should move the axis env to be part of the tracer state in core.py, for at least two reasons:
Yeah, this worries me a bit. This feels like a feature that might be good not to have, to ensure compositionality.
The batch normalization use case is real, though. I wonder if there could be a more hygenic way to do support this, e.g., only surfacing active axis names defined by a particular library?