Remove useless namespaces / change runcard names#1211
Conversation
1bd4eeb to
aabae26
Compare
|
Seems to me one PR is better here. But seems to me if we want to do this (which I think we do), then it is a blocker for the next tag. |
|
I actually branched out from #1153 thinking it could be the "open soruce tag" but not necessarily the "paper fits tag" but it should be easy enough to rebase to master. I won't be able to attend the CM today but take my official stance as "whatever you guys decide". |
|
combining the namespaces seems sensible. There is currently a slightly annoying feature that validphys sometimes uses these as namespaces but also uses them as dictionaries which are taken from the runcard directly. I think the latter can be changed (e.g. in effective exponents) to use the former. We'll have to take care to keep bakwards compatibility at least until 4.0 because we still want to be able to run old fits until then. Same applies to moving genrep outside of the fitting dictionary. We just need to work out how we can expect it either inside or outside (for now) I think the filterseed should possibly stay with the closure "dict" for now since it really only applies to that, but the other seeds can, by all means, be grouped in a more sensible manner. |
|
@scarlehoff we have discussed about this today, and we agree that we should include the proposed changes asap. |
What was the agreement on how hard to break backwards compatibility? If I don't need to care about nnfit or old runcards I can finish this much quicker. |
|
@scarlehoff I think we can live without older n3fit runcards, but if nnfit could still work at least with comparefits, that would be ideal. It seems to me it should be possible to hack fit.as_input to support everything though. |
This is true. I think what I had in mind yesterday was definitely take all EDIT: sorry I said fitbasis but that's actually not an n3fit thing, I meant the fitting dict The pseudodata function should probably be replaced at some point to use the new functions which already exist in validphys (n3fit_data). But otherwise I think nothing would break so we can basically just change the runcards.. I think there will only be very few cases where we have to change something in validphys or choose to leave it: e.g. The stuff in config can be changed to use the parse_from properly and/or we can maybe just get old runcards and put the fitbasis in the base namespace. As @Zaharid just suggested. |
|
The short version of that is that I think you can be quite brutal and not too many things break, if they do I don't think they will be hard to fix. |
|
Ok, I'll do my best to first get the "final version" and then I'll encapsulate the backwards compatibility hacks as much as I can so when we decide to pull the plug it can be done easily. |
|
At this point the test pass in my computer, I wonder whether Travis will. Not sure about the Edit: also, we might want it to change in order to force inconsistency but I think it is actually fine if the basis-fitbasis-sumrules dictionary is called |
|
@scarrazza why can't the tests be restarted anymore? This last commit passed everything but one (and because of docker) |
|
On 7 May 2021, at 10:14, Juan M. Cruz-Martinez ***@***.***> wrote:
@scarrazza why can't the tests be restarted anymore? This last commit passed everything but one (and because of docker)
Bitcoin most likely.
… —
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
04f2a22 to
b24abb0
Compare
47a31a3 to
45cb546
Compare
|
Some questions and requests:
|
45cb546 to
e86eb8d
Compare
|
I guess at this point delaying #1153 is counter productive and besides I suppose this counts as a separate change wrt the data additions which is what we agreed to hold it for. How does the maxlambda change affect compatibility? Can we run vp with old fits? |
No, you're right. I should not "fix the error" but rather allow it (and maybe print a "deprecated" warning) |
|
Greetings from your nice fit 🤖 !
Check the report carefully, and please buy me a ☕ , or better, a GPU 😉! |
wilsonmr
left a comment
There was a problem hiding this comment.
some small comments but on the whole looks fine.
|
Would be good to have explicit green light from at least @wilsonmr. To clarify, is it correct that:
|
|
FWIW the code changes look reasonable to me. |
Yes. Tested with
All fits that I've tested do. I've run the bots a few times (it's running now) and I just sent a fit to the cluster which will be compared to a March fit. |
|
Greetings from your nice fit 🤖 !
Check the report carefully, and please buy me a ☕ , or better, a GPU 😉! |
|
The full (only 50 replicas) fit seems reasonable as well: https://vp.nnpdf.science/qcvzhloyTJKn0eByukqlsg==/ |
|
Sorry had a busy day I will look at this ASAP |
wilsonmr
left a comment
There was a problem hiding this comment.
subject to the suggestions I made (or strong objection to them) I think this looks really good, thanks @scarlehoff !
Co-authored-by: wilsonmr <33907451+wilsonmr@users.noreply.github.com>
joining the two commits for ease of revert in case Co-authored-by: wilsonmr <33907451+wilsonmr@users.noreply.github.com>
|
Not sure about the check-core thing but if people feel strongly about it I'll do the top-level variable. Some runcards don't run but it is because of the theory (#1227) Rerunning the bot because it's free. On Monday morning if there are no other requests I'll merge everything (adding the unresolved comment if needed) |
|
Greetings from your nice fit 🤖 !
Check the report carefully, and please buy me a ☕ , or better, a GPU 😉! |
In this PR I will try to address #1166 so that the runcard specification when the code is as sensible as possible.
I was not sure whether it was better to have a different PR for every specific change which would make it easier to review but since the runcards will look differently before and after this PR I think it might be better to have them all in one...
(or all separated but they need to be merged at the same time with potential for out of sync...)
The plan is that after this PR (if) is merged the runcards before and after will be incompatible, which means we 100% want to do this before going public...
I will list here the changes I've implemented. I'll try to separate them in different commits so they can be easily cherry picked
poslambda->maxlambda: this value stopped long ago being the "positivity lambda" to become the "max. positivity lambda" and with the inclusion of integrability not even the "positivity" part is right anymore.tensorboardandsave/loadoutside of thefittingdictionary. Not even sure what I was thinking about when I put them in there. I guess encapsulating then3fitpiece or smt.parametersoutside fitting.Things I'll do between tomorrow and Friday I guess so people can complain beforehand:
sum_rulesalso there (and modify the check so that only the right sum rules can be used!) --> this isfittingnow.genrepoutside the fitting dictionaryFeel free to suggest other changes I might have forgotten about (this is the time to do so!)
"hacks" done to keep backwards compatibility will be marked with a
#BCHcomment.Note: not fixing the test for now as it requires to take a decision on how hard to break backwards compatibility.
Note to self: before merging all the runcards need to be rechecked to ensure they are not out of sync (and that includes the ones in the runcards PR!)