-
Notifications
You must be signed in to change notification settings - Fork 46
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Seed checker gets confused when handling multiple implementations #129
Comments
Hmmm... If one submission has two implementations, how do we know which implementation is the "real" implementation? And why would the "unused" implementation submitted in the first place? |
Maybe the title should be change to "[Seed Checker] Unable to handle multiple implementation." "Bug on seed checker" is not very informative. |
The results dirs should have separate directories for these implementations. and there are 9 sets of results both mxnet and pytorch. For every mxnet log the pytorch source code is checked too and vice versa. |
Do you know if it is a rule that says both the results dir and the implementation dir end with a "-{framework}" suffix? If so, maybe I can perform some string matching on the dir path; otherwise, solving this might be tricky. |
is an example that I'm worried about. There's no way to figure out what implementation it is by looking at the path alone. |
Good question. In the policies doc it says: "System names and implementation names may be arbitrary." https://github.com/mlcommons/policies/blob/master/submission_rules.adoc#561-training Given that it is indeed hard to fix. I guess we need to keep that in mind when reviewing the submissions. So far I have hit just a warning, but I am not sure if there is another case where the seed checker fails while it should not. |
This can be fixed, but only if we ensure a deterministic behavior between results directory and source code directory. For example: matches to implementation dir: This is easy for a human to understand, but not deterministic for a script because the submission rules however it says that implementation dir names may be arbitrary (also there are 3 more implementation dirs referring to different results dirs) So this has to change -- implementation directory names should be well-defined to deterministically match results dirs. What we do right now is check ALL implementation dirs for every results dir -- which is clearly wrong. |
This depends on issue #156 |
There is a bug in the seed checker:
On this line we see that
logging/mlperf_logging/package_checker/package_checker.py
Line 123 in 9ede9c6
the seed checker checks all source directories under implementation. So if we have two implementations, one in TF, and one in PyT for the same benchmark, then the following scenario is possible:
Assume the TF implementation reports the seed and the PyT does not. Then for the logs of the TF implementation the PyT source code will also be checked and will give a warning. This is rather confusing.
The solution is to have ONLY one implementation to be checked as each log file comes only from one implementation.
The text was updated successfully, but these errors were encountered: