n = 10
A = we.randn((n, n))
we.copy(A) # 0 flops
we.concatenate([A, A],) # 2 * n**2 flops
we.stack([A, A]), # 2 * n **2 flops
we.broadcast_to(A, (n, n, n)) # n**3 flops
we.fill_diagonal(A) # n flops. NOTE: this contradicts the docstring at whest/src/whest/_free_ops.py:930
Examples of current behavior:
It's odd that
copyis free but the rest are charged. I propose making alll non-ALU operations (including all operations above) free.