Open jdh8 opened 3 months ago
For comparison ops, innermost size in [1, 31] is no longer considered valid paging in tt-metal https://github.com/tenstorrent/tt-metal/blob/6fbf494df30b6e228847bcd94574ca7a9a832e0d/tt_metal/impl/buffers/buffer.cpp#L25-L48
We call this "strict" page size for now. https://github.com/tenstorrent/pytorch2.0_ttnn/blob/a5ce2a677f6ea9c6ba704c21db1c771bff03ef8a/torch_ttnn/passes/lowering/to_tt_pass.py#L320-L323
I tested various broadcasting settings against all pointwise binary ops, and it produced interesting results. I tested both uni- and bidirectional broadcasting by using the following input shapes:
I also tested 0-D cases such as
(), (32, 32)
. This caused a floating point exception (core dumped) and halted the whole test set.Arithmetic ops and
xlogy
Unidirectional broadcasting passed:
((64,), (32, 64)), ((64, 32), (64, 1))
.Bidirectional broadcasting failed:
((64, 1), (1, 64)))
. It somehow passed compilation but produced incorrect results.Comparison ops
All cases involving broadcasting failed. Only inputs with the same sizes passed.
Logical ops
All cases failed, including the ones with identical sizes. These tests failed for inconsistent reasons. They either failed for broadcasting or
RuntimeError: Bool did not match BFloat16
._Originally posted by @jdh8 in https://github.com/tenstorrent/pytorch2.0_ttnn/issues/54#issuecomment-2298191687_
Edited on 2024-08-22 03:00Z