Conversation
4c319e4 to
a9773e5
Compare
a9773e5 to
1f1a550
Compare
1f1a550 to
f3f24f2
Compare
141ffcb to
5d93805
Compare
e898e5d to
d3fef8e
Compare
ac5ab5e to
36b5e68
Compare
|
@kaushikcfd Is this worth pursuing given that compile times are suffering because of expression traversal complexity in pymbolic? |
For what it's worth, the |
I think this is useful. IIUC, this PR quite significantly brings down the complexity of the expression comparison. If the overheads of this approach (creating a new mapper for every comparison) are under-control, I would love to get rid of hacks such as: https://github.com/kaushikcfd/pymbolic/blob/a697d47cd53e9902abc49f98d67921b466c992c2/pymbolic/mapper/__init__.py#L213. |
|
However, I wonder how the loopy CI failures could be fixed? By creating a derived version of every pymbolic expression type in loopy so that they can use loopy-specific EqualityMapper? |
It should work with the modified branches. I imagine it needs some work in |
|
Oops had missed the branch in the description. I think those will work fine. Thanks! |
d987004 to
c07fdf4
Compare
Whoa. I had missed that during review. That is pretty gross. |
c07fdf4 to
9f8c582
Compare
34a80ca to
ee18b8f
Compare
|
I need to do some measuring. |
2038873 to
6073162
Compare
24ea387 to
df57c91
Compare
df57c91 to
aacf0c6
Compare
815f4c5 to
c54c739
Compare
c54c739 to
46c2392
Compare
Added an
EqualityMappersimilar to the one in inducer/pytato#166.This seems a bit slower than the current version (benchmarked against inducer/pytential#121):
it went from 5.3s-ish to 6.6s-ish.
fail-fastfrom downstream CIFixes #73.