Skip to content
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

Bisect: regenerates ground-truth results unnecessarily #333

Closed
JohnJacobsonIII opened this issue May 21, 2021 · 1 comment
Closed

Bisect: regenerates ground-truth results unnecessarily #333

JohnJacobsonIII opened this issue May 21, 2021 · 1 comment
Assignees
Labels
bisect Pertains to FLiT Bisect bug make Involves touching GNU Makefiles python Involves touching python code tests Involves touching tests

Comments

@JohnJacobsonIII
Copy link
Collaborator

Bug Report

Describe the problem

  1. Bisect regenerates the ground-truth.csv result file (by running all baseline tests) many times throughout a bisect run. This may be seen by calling bisect with VERBOSE defined in the Make environment and looking for calls to ./gtrun --output ground-truth.csv, or by analyzing log events in Event logging #331.

    It should be noted that these unexpected event duplications break the logical program dependencies used in tracing the FLiT process for Event logging #331.

  2. Bisect currently has no means to pass Makefile output to an arbitrary stream; all output from makefiles is currently conveyed through stdout during the bisect process, although Python output may be written elsewhere via command line arguments.

Possible Fixes

  • Extraneous test runs:
    • Ground truth tests should only be run once, so eliminate any extraneous test calls to gtrun.
    • The cause is undetermined, but dependencies of the gtrun executable need to be thoroughly reviewed between both the base Makefile.in and the bisect Makefile_bisect_binary.in files.
    • Tests should be added to check for extraneous events (particularly compilation, links, test runs, and test comparisons.)
  • Make output:
    • This is minor, but makes for inconsistent integration testing at least. A couple immediate thoughts:
      1. Leave as is, and adapt integration testing to access stdout for parsing as necessary.
      2. Propagate stream argument to all bisect functions for consistency
@JohnJacobsonIII JohnJacobsonIII added bug python Involves touching python code make Involves touching GNU Makefiles tests Involves touching tests bisect Pertains to FLiT Bisect labels May 21, 2021
@JohnJacobsonIII JohnJacobsonIII self-assigned this May 21, 2021
mikebentley15 added a commit that referenced this issue Jun 15, 2021
@mikebentley15
Copy link
Collaborator

Pull request #337 fixes this issue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bisect Pertains to FLiT Bisect bug make Involves touching GNU Makefiles python Involves touching python code tests Involves touching tests
Projects
None yet
Development

No branches or pull requests

2 participants