Conversation
[ghstack-poisoned]
🔗 Helpful links
❌ 12 New FailuresAs of commit d864270 (more details on the Dr. CI page): Expand to see more
🕵️ 12 new failures recognized by patternsThe following CI failures do not appear to be due to upstream breakages
|
[ghstack-poisoned]
[ghstack-poisoned]
[ghstack-poisoned]
[ghstack-poisoned]
| if func in (aten.to.prim_Device, aten.to.device): | ||
| _, new_kwargs = normalize_function(func, args, kwargs, normalize_to_only_use_kwargs=True) | ||
| input_device = new_kwargs["device"] | ||
| out_device = input_device if input_device else new_kwargs["input"].device | ||
| new_kwargs["device"] = torch.device("meta") | ||
| r = run_function(func, types, (), new_kwargs) | ||
| return converter(r, out_device) |
There was a problem hiding this comment.
For my understanding, how are we finding these special cases? Like have we split native functions in some way or is it from errors that dynamo has found by testing this?
There was a problem hiding this comment.
I'm starting with just the special cases patterns (constructors/device arg/taking sizes). I have a test here that found these operators: https://github.com/pytorch/pytorch/blob/master/test/test_fake_tensor.py#L106.
From there I'm going to
a) extend with dynamo testing
b) add cross-ref testing
I want to land these basic stuff first to unblock dynamo testing / dynamo and then continue to more comprehensive testing.
Stack from ghstack (oldest at bottom):
_make_subclass#77970