I've added a new command to coqbot which together with #16679 will allow you to write
@coqbot bench native
to start a bench with coq-native enabled.
Great! No more fiddling with dummy patches! A question, though: does it display the fact that native was enabled in the coqbot summary message?
Why do we care about testing this? To me, it seems mostly a large waste of cycles
Because as long as native exists, we want to be sure it is not completely broken.
Pierre-Marie Pédrot said:
Great! No more fiddling with dummy patches! A question, though: does it display the fact that native was enabled in the coqbot summary message?
No, but I could do that.
Emilio Jesús Gallego Arias said:
Why do we care about testing this? To me, it seems mostly a large waste of cycles
If we don't have this feature, people will still bench native, it is just a convencience.
Pierre-Marie Pédrot said:
Because as long as native exists, we want to be sure it is not completely broken.
how does the bench help with that? I was under the impression that was the role of CI
I'm happy if we want to test the performance of the OCaml compiler
but we should name it properly
we're testing the OCaml compiler way outside of its standard domain
yes, but how is that useful for us?
I mean to bench that
for users it is irrelevant
and moreover the testing we do means little
it could be that one OCaml version works Ok, some other could just give totally different bench numbers
the bench seems like a waste of energy to me
Emilio Jesús Gallego Arias said:
for users it is irrelevant
how is it irrelevant? IMO users don't care if the time is spent in coqc itself or in a child ocamlopt
Native users will care how fast the native conversion is, not OCaml compiling their code
I guess we should ask them
but that seems very brittle to me
As it stands, we don't have a native bench per say. However the code we generate that gets compiled by ocamlopt still needs to be benched. When we are playing around with how the term gets translated, we want to see if it makes the compiler slower etc.
Native compilation is a bit like a JIT. Users care about the sum of compilation time and running time, because both can occur when testing for convertibility.
Last updated: Sep 09 2024 at 06:02 UTC