Summary: 57 instances, 54 unique Text Count // TODO: This is kinda complicated. Saving this for a future date. 1 // TODO: linear is pretty important for performance, but I'm not sure how to work 1 # # TODO: make sure PyTorch has tanh_backward implemented for jvp!! 1 throw std::runtime_error("TODO: implement record function"); 1 # TODO: remove the monkeypatching and add an extension point into PyTorch core 1 // TODO: this is technically kind of sketchy, since we're relying on the fact 1 // TODO: need to reset sizes/strides on mutation 1 // TODO: Some duplication with torch/csrc/autograd/python_variable.cpp 1 // TODO: we only need to do the following (marked with !) on in-place functions 1 // TODO: replace with targetable functionalization 1 ), "TODO: support backwards for broadcasting" 1 # TODO: Remove the following hack for namedtuples 1 // TODO: upstream into core 1 // TODO: is this lock safe? No one else should be writing to the same bucket 1 // TODO: https://github.com/pytorch/pytorch/issues/69991 1 // TODO: figure out what this is 1 assert spec.out == 0, "TODO: support autograd on out= ?" 1 // TODO: First entry in the stack is a default autograd key. 2 # TODO: forward-mode AD: does it also respect no_grad? What does that mean 1 // TODO: Still a problem with composabiilty and AutoNonVariableTypeGuard. 1 // // TODO: No clue if this works if the first non-batch dim isn't size 1 1 // TODO: I don't think this ctor gets used. 1 // TODO: if the result isn't batched but bias is, then we need to do the following. 1 # TODO: it looks like the autograd alias key doesn't work 1 // NB: not lock safe. TODO: does it need a lock? 1 assert spec.alias_group == 0, "TODO: support aliased backwards" 1 // TODO: actually populate kwargs sometimes? At the moment, every argument 1 throw std::runtime_error("TODO: support overloaded signatures"); 1 // TODO: might be more efficient if we scan first then not copy? Depends. 1 throw std::runtime_error("TODO: support other arg counts"); 1 // TODO: all of these should be fixed in a more blessed way. In particular, 1 // TODO: Get rid of this, it is bad for composability 1 // TODO: can replace with better conditional functionalization 1 // TODO: generalize this to more transforms 1 // TODO: is this right? 1 assert layout == torch.strided, "TODO: support other layouts" 1 # TODO: The following shows that the per-sample-grads computed are different. 1 # TODO - move this to PyTorch core. This overrides the pytree implementation for 1 // TODO: is this even right? 2 # TODO: some namedtuple return. Also, testing for codegen 1 throw std::runtime_error("TODO: handle more dims"); 1 # TODO: We don't need to copy the model to create a stateless copy 2 // TODO: delete the following after confirming performance 1 // TODO: The following algorithm only works for batch dim == 0. 1 assert s.alias_group >= 0, "TODO: support complex aliasing" 1 // TODO: A little bird says that unfold + matmul is actually faster than 1 # TODO - move the hashing part of static_args to C++. 1 // TODO: this is a weird special case... 1 // TODO: Probably better way to metaprogram this 1 // TODO: Once the divergent behavior for 0-d scalar is fixed, we should use REDUCTION_BOXED_ARGS 1 throw std::runtime_error("TODO: support more than one output"); 1 ), "TODO: support aliased backwards" 1 // TODO: Consider rewriting the following to look like: 1 // TODO: dedup 1