spec: Draft FMA extension field accelerator#809
Conversation
Kimi Code ReviewAutomated review by Kimi (Moonshot AI) |
Codex Code Review
|
erik-3milabs
left a comment
There was a problem hiding this comment.
Am I correct in understanding that this PR is not yet complete? Right now, there does not seem to be a way to get the information out of the "Extension Field Realm" back to RAM/MEMORY land and interact with it. (I seem to recall we considered having assertions in the Fext-Realm, instead of the load-back, but I don't see any signs this PR introduces that solution yet)
|
Indeed, the intention was to have an |
15d0985 to
e0a13e2
Compare
Co-authored-by: Erik <159244975+erik-3milabs@users.noreply.github.com>
Co-authored-by: Erik <159244975+erik-3milabs@users.noreply.github.com>
59b5636 to
fe92c27
Compare
| #let nr_interactions = compute_nr_interactions(fmachip) | ||
|
|
||
| To compute a fused multiply-add (FMA) operation `output = a * b + c`, we first load | ||
| everything from memory, passing the input (ABB) addresses in A0-A2 and the output address in A3. |
There was a problem hiding this comment.
Could you tell me what ABB is? I'm not familiar with the term, and cannot gather its meaning from context.
There was a problem hiding this comment.
Perhaps also worth clarifying in the text for this same reason.
| This chip asserts that a field extension element in the ABB is zero. | ||
| It uses #nr_variables variables spanning #nr_columns columns and #nr_interactions interactions. |
There was a problem hiding this comment.
You forgot to recompute #nr_variables, #nr_columns, and #nr_interactions.
There was a problem hiding this comment.
Also, please highlight that the addr is read from A0.
| [[constraints.all]] | ||
| kind = "interaction" | ||
| tag = "MEMW" | ||
| input = [["+", 3, "d"], "addr", ["cast", 0, ["BaseField", 8]], "timestamp", 0, 0, 0] | ||
| output = ["cast", 0, ["BaseField", 8]] | ||
| multiplicity = "μ" | ||
| iter = ["d", 0, 2] |
There was a problem hiding this comment.
This is a very elegant solution; nicely done! Perhaps we should dedicate one or two sentences on clarifying to the reader why it works.
No description provided.