skipwich has quit [Read error: Connection reset by peer]
skipwich has joined #amaranth-lang
cyrozap_ has quit [Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in]
cyrozap has joined #amaranth-lang
cyrozap has quit [Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in]
cyrozap has joined #amaranth-lang
d_olex has quit [Ping timeout: 260 seconds]
cyrozap has quit [Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in]
cyrozap has joined #amaranth-lang
cyrozap has quit [Client Quit]
cyrozap has joined #amaranth-lang
cyrozap has quit [Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in]
cyrozap has joined #amaranth-lang
Hoernchen has quit [Ping timeout: 276 seconds]
Hoernchen has joined #amaranth-lang
smkz has quit [Quit: smkz]
smkz has joined #amaranth-lang
antoinevg[m] has quit [Quit: Idle timeout reached: 172800s]
d_olex has joined #amaranth-lang
mabl[m] has joined #amaranth-lang
<mabl[m]>
<zyp[m]> "speaking of cxxrtl, how does the..." <- Is there data on how much faster it would be? I know there is an old branch in the repo. Would rebasing it on the latest simulation semantics be something where external contributions are welcome?
<whitequark[cis]>
it depends on the design and testsuite
<whitequark[cis]>
cxxrtl has a high startup cost, so re-using simulator instances and/or netlists are basically mandatory
<whitequark[cis]>
a C++ compiler is needed, which would probably be provided by the ziglang pypi package, but integration needs to be written
<whitequark[cis]>
also, there will be a significant additional engineering effort on top of rebasing that old branch, because the internals of the new simulator aren't quite compatible with CXXRTL yet (this was known at the time), nor is CXXRTL ideal for combining the two yet (also a known issue)
<whitequark[cis]>
the performance of even long-running testsuites were limited by how the clock generation was done in Python by add_clock, with the delay of that dominating the time spent in C++
<whitequark[cis]>
so something like a reactor would have to be added to CXXRTL to aid dynamic scheduling required by e.g. the Amaranth testsuite
<whitequark[cis]>
in short, it's a lot more tricky than just rebasing it, which is why it's currently sitting there idle
<mabl[m]>
That does indeed sound more than a mouth full. Thanks for taking the time to outline that work.