Jeremy Kun

Results 329 comments of Jeremy Kun
trafficstars

I will close this issue, but note that until I get https://github.com/google/heir/pull/675 working and merged (upstreaming polynomial) the new pattern won't apply.

This has been removed in the upstream port of Polynomial, and from what I can tell it is unused in the codebase. I'm going to remove it for now so...

Last one appears to be upgrading the roberts cross 4x4 to 64x64 (though we know this will be very slow due to https://github.com/google/heir/issues/589). Maybe in the mean time we can...

That is bizarre about copybara. Here's the commit: https://github.com/google/heir/commit/4d84f04d7d82fa8507e26ef8968b675772def48a

Yeah I was thinking I could extract the needed patterns (converting the cleartext weight tensor to individual constants would suffice), but haven't had the chance to figure out exactly which...

A long-term plan for this is mentioned in the HEIR open meeting notes for 2024-04-04 https://docs.google.com/document/d/121_0mzqYIWYMc7rcW2Et5qS-ux4ut3b-kno1dI9sQq8/edit?usp=sharing

After https://github.com/google/heir/pull/601 this should be slightly lower priority: by applying folders before canonicalize, we were able to reduce the runtime hit of unrolling loops.

Summarizing: | | boxblur_64x64.mlir | dotproduct_8.mlir | gxkernel_64x64.mlir | hammingdistance_4.mlir | linearpolynomial_64.mlir | quadraticpolynomial_64.mlir | robertscross_64x64.mlir | |------|--------------------|-------------------|---------------------|------------------------|--------------------------|-----------------------------|-------------------------| | HEIR | 7 | 3 | 6 (8x8, not 64x64) |...

After discussion, we realized the reason HEIR seems to do worse on the box_blur example is because HECO's kernel is 2x2, while HEIR's is 3x3, so HEIR's should be equivalent...

Now that the first e2e runtime test is done (simple_sum_test.cpp), I'm looking at adding analogous tests for the rest of the HECO examples to bolster our confidence in their correctness....