-
Notifications
You must be signed in to change notification settings - Fork 103
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
Remove built cache of previous git commits. #15344
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good overall. I have only one gripe.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm good with this. The CMake changes look good (once we fix the name of git
).
I'm not familiar with the JIT build and haven't combed through the code to know why we're loading stale items. This approach feels like a hammer to me, but again I don't know the nuances so you know what's needed here.
522ddb5
to
c71b534
Compare
I also find it weird. I asked previously why we can't just put things in |
We can't really test this change in CI without doing another build since it's a compile define |
If we want to avoid compile define, we can move finding of git hash to inside metal code. Use system() and pipe the output to a file. With this, we can probably test that root path is as expected. |
Please do not add runtime code to get source control information. That'll break pipelines, anyway. I'm more concerned of how you're gonna write an automated test for this at all. Also, once @afuller-TT 's changes from here https://github.com/tenstorrent/tt-metal/pull/15400/files go in, we can change your CMake changes to parse data from Can we address @blozano-tt and @afuller-TT 's comments about this being a big hammer? I know we've thought about this before. Are there no smaller hammers we can use to invalidate the cache of previous commits? |
discussion prior to the PR (on devlopers channel, I think) people were worried about leaving stale files behind, hence the delete. the way I see it:
does this work? |
We can do 2 for now until @afuller-TT 's change hits, then we should be able to do 1 and easily provide what the hash here while accounting for some release (git archive) developer flows. How's that sound, or am I misunderstanding? @afuller-TT @pgkeller |
b475ae9
to
d47e5bc
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Build looks good, but I still don't see a test to test out the other build path where VERSION_HASH
is not defined? Am I blind?
835ae2a
to
f84d209
Compare
Find git hash in cmake and add it to defines, add rtoptions to disable clearing of previous built dir.
f84d209
to
792a3c6
Compare
Yes, we wanted to keep the solution simple, and decided to take the approach of defines. Unfortunately that does make it hard to add automated test for this. |
Sure, then we can leave it as a dev feature with no testing. Approved~! |
Ticket
Link to Github Issue
Problem description
Previously built files might still be reused when the tt_metal is updated.
What's changed
VERSION_HASH
set by parent CMakeLists.txtChecklist