* about when poky check sstate_cache #yocto
@ 2020-05-27 6:29 zhangyifan46
2020-05-27 8:00 ` [poky] " Richard Purdie
0 siblings, 1 reply; 3+ messages in thread
From: zhangyifan46 @ 2020-05-27 6:29 UTC (permalink / raw)
To: poky
[-- Attachment #1: Type: text/plain, Size: 1187 bytes --]
I read the codes about sstate_cache. Let me briefly talk about how it work . I am not sure if it is right.
Example,we have setscene tasks A_setsscene, B_setcene.
and Task C ,D are not setscene task.
After we bitbake something, runqueue started,and it check A , B to see if the sstate_caache exists and if exist, the poky does unpacking the cache and then ,ordinary build process starts and it will skip A and B.
So checking the existence and validation of sstate_cache is before ordinary build process instead of right before execcuting A and B(for example, we have a dependency tree, A,depend on X ,checking is before X instead of between X and A)
that's the result of my reading codes. And i did a small experienment that, in the middle of a clean bitbake project, i copied all sstae_caches to the sstate_cache directory and it seemed the bitbake skips no task and unpacking did not happen.
Finally, i have a question. Can we move the checking and unpacking to, like the example above, right before executing A ,between X and A.
it means a lot to me. Cause the sharing of sstate_cache may be helpful to a more efficent parallel make(instead of just parallel make gcc jobs)
[-- Attachment #2: Type: text/html, Size: 1238 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [poky] about when poky check sstate_cache #yocto
2020-05-27 6:29 about when poky check sstate_cache #yocto zhangyifan46
@ 2020-05-27 8:00 ` Richard Purdie
0 siblings, 0 replies; 3+ messages in thread
From: Richard Purdie @ 2020-05-27 8:00 UTC (permalink / raw)
To: zhangyifan46, poky
On Tue, 2020-05-26 at 23:29 -0700, zhangyifan46@huawei.com wrote:
> I read the codes about sstate_cache. Let me briefly talk about how it
> work . I am not sure if it is right.
> Example,we have setscene tasks A_setsscene, B_setcene.
> and Task C ,D are not setscene task.
> After we bitbake something, runqueue started,and it check A , B to
> see if the sstate_caache exists and if exist, the poky does unpacking
> the cache and then ,ordinary build process starts and it will skip A
> and B.
> So checking the existence and validation of sstate_cache is before
> ordinary build process instead of right before execcuting A and B(for
> example, we have a dependency tree, A,depend on X ,checking is before
> X instead of between X and A)
> that's the result of my reading codes.
This is correct. Its because if A depends on B and A is present in the
cache, we can skip B entirely in some cases. This means the checking
has to happen at the start of the build.
> And i did a small experienment that, in the middle of a clean
> bitbake project, i copied all sstae_caches to the sstate_cache
> directory and it seemed the bitbake skips no task and unpacking did
> not happen.
Correct.
> Finally, i have a question. Can we move the checking and unpacking
> to, like the example above, right before executing A ,between X and
> A. it means a lot to me. Cause the sharing of sstate_cache may be
> helpful to a more efficent parallel make(instead of just parallel
> make gcc jobs)
You can share the sstate cache directory amongst multiple machines over
NFS. The dependency cannot be moved just before A though for the reason
I mention above.
Cheers,
Richard
^ permalink raw reply [flat|nested] 3+ messages in thread
* about when poky check sstate_cache #yocto
@ 2020-05-27 6:25 zhangyifan46
0 siblings, 0 replies; 3+ messages in thread
From: zhangyifan46 @ 2020-05-27 6:25 UTC (permalink / raw)
To: yocto
[-- Attachment #1: Type: text/plain, Size: 1187 bytes --]
I read the codes about sstate_cache. Let me briefly talk about how it work . I am not sure if it is right.
Example,we have setscene tasks A_setsscene, B_setcene.
and Task C ,D are not setscene task.
After we bitbake something, runqueue started,and it check A , B to see if the sstate_caache exists and if exist, the poky does unpacking the cache and then ,ordinary build process starts and it will skip A and B.
So checking the existence and validation of sstate_cache is before ordinary build process instead of right before execcuting A and B(for example, we have a dependency tree, A,depend on X ,checking is before X instead of between X and A)
that's the result of my reading codes. And i did a small experienment that, in the middle of a clean bitbake project, i copied all sstae_caches to the sstate_cache directory and it seemed the bitbake skips no task and unpacking did not happen.
Finally, i have a question. Can we move the checking and unpacking to, like the example above, right before executing A ,between X and A.
it means a lot to me. Cause the sharing of sstate_cache may be helpful to a more efficent parallel make(instead of just parallel make gcc jobs)
[-- Attachment #2: Type: text/html, Size: 1223 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-05-27 8:00 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-27 6:29 about when poky check sstate_cache #yocto zhangyifan46
2020-05-27 8:00 ` [poky] " Richard Purdie
-- strict thread matches above, loose matches on Subject: below --
2020-05-27 6:25 zhangyifan46
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.