Message ID | 20240317120138.180013-1-martin.jansa@gmail.com |
---|---|
State | Accepted |
Delegated to: | Steve Sakoman |
Headers | show |
Series | [kirkstone] stress-ng: avoid calling sync during do_compile | expand |
On Sun, Mar 17, 2024, 08:01 Martin Jansa <martin.jansa@gmail.com> wrote: > calling 'sync' from do_compile in the middle of big OE world > build harms the build time. > No objection from me but do you have a any data on how much an innocuous call to sync slows down a build? Randy > Signed-off-by: Martin Jansa <martin.jansa@gmail.com> > --- > .../0001-Makefile-avoid-calling-sync.patch | 35 +++++++++++++++++++ > .../stress-ng/stress-ng_0.13.12.bb | 1 + > 2 files changed, 36 insertions(+) > create mode 100644 > meta/recipes-extended/stress-ng/stress-ng-0.13.12/0001-Makefile-avoid-calling-sync.patch > > diff --git > a/meta/recipes-extended/stress-ng/stress-ng-0.13.12/0001-Makefile-avoid-calling-sync.patch > b/meta/recipes-extended/stress-ng/stress-ng-0.13.12/0001-Makefile-avoid-calling-sync.patch > new file mode 100644 > index 0000000000..fec8c524eb > --- /dev/null > +++ > b/meta/recipes-extended/stress-ng/stress-ng-0.13.12/0001-Makefile-avoid-calling-sync.patch > @@ -0,0 +1,35 @@ > +From 1d1801902a4944c6f5fa521c19b32fbac7342a0c Mon Sep 17 00:00:00 2001 > +From: Colin Ian King <colin.i.king@gmail.com> > +Date: Sat, 6 Aug 2022 13:05:59 +0000 > +Subject: [PATCH] Makefile: avoid calling sync > + > +Original commit message: > +Makefile: use ld-gold if it is available > + > +Speed up linking by using ld-gold if is available. Add build > +time detection to see if compiler allows it > + > +MJ: backported only the "sync" removal from Makefile as calling > + it from do_compile in the middle of big OE world build harms > + the build time. > + > +Upstream-Status: Backport [V0.14.04 > c10e5c3f9f5560a085279f4c4b399c2f34cb897d] > + > +Signed-off-by: Colin Ian King <colin.i.king@gmail.com> > +Signed-off-by: Martin Jansa <martin.jansa@gmail.com> > +--- > + Makefile | 1 - > + 1 file changed, 1 deletion(-) > + > +diff --git a/Makefile b/Makefile > +index f8f71c54b..23db4c612 100644 > +--- a/Makefile > ++++ b/Makefile > +@@ -425,7 +425,6 @@ OBJS += $(CONFIG_OBJS) > + stress-ng: $(OBJS) > + $(Q)echo "LD $@" > + $(V)$(CC) $(CPPFLAGS) $(CFLAGS) $(OBJS) -lm $(LDFLAGS) -o $@ > +- $(V)sync > + > + config.h: > + +$(MAKE) -f Makefile.config STATIC=$(STATIC) -j > diff --git a/meta/recipes-extended/stress-ng/stress-ng_0.13.12.bb > b/meta/recipes-extended/stress-ng/stress-ng_0.13.12.bb > index 807ecd3466..72dafddaf8 100644 > --- a/meta/recipes-extended/stress-ng/stress-ng_0.13.12.bb > +++ b/meta/recipes-extended/stress-ng/stress-ng_0.13.12.bb > @@ -7,6 +7,7 @@ LIC_FILES_CHKSUM = > "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" > > SRC_URI = "git:// > github.com/ColinIanKing/stress-ng.git;protocol=https;branch=master \ > > file://0001-stress-cpu-disable-float128-math-on-powerpc64-to-avo.patch \ > + file://0001-Makefile-avoid-calling-sync.patch \ > " > SRCREV = "f59bcb2fe1e25042e77d5e4942f72bfa026fa305" > S = "${WORKDIR}/git" > -- > 2.44.0 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#197260): > https://lists.openembedded.org/g/openembedded-core/message/197260 > Mute This Topic: https://lists.openembedded.org/mt/104982006/953399 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [ > rwmacleod@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- > >
No, I've noticed this when stress-ng and lib32-stress-ng were running do_compile at the same time and for some reason both sync calls got stuck, I've killed it when it was running both do_compile tasks for 13 hours (and there was chromium and lib32-chromium do_compile running for 15+ hours as well (not sure if it was related to this sync or something else). On Sun, Mar 17, 2024 at 3:37 PM Randy MacLeod <rwmacleod@gmail.com> wrote: > > > > On Sun, Mar 17, 2024, 08:01 Martin Jansa <martin.jansa@gmail.com> wrote: >> >> calling 'sync' from do_compile in the middle of big OE world >> build harms the build time. > > > No objection from me but do you have a any data on how much an innocuous call to sync slows down a build? > > Randy > >> >> Signed-off-by: Martin Jansa <martin.jansa@gmail.com> >> --- >> .../0001-Makefile-avoid-calling-sync.patch | 35 +++++++++++++++++++ >> .../stress-ng/stress-ng_0.13.12.bb | 1 + >> 2 files changed, 36 insertions(+) >> create mode 100644 meta/recipes-extended/stress-ng/stress-ng-0.13.12/0001-Makefile-avoid-calling-sync.patch >> >> diff --git a/meta/recipes-extended/stress-ng/stress-ng-0.13.12/0001-Makefile-avoid-calling-sync.patch b/meta/recipes-extended/stress-ng/stress-ng-0.13.12/0001-Makefile-avoid-calling-sync.patch >> new file mode 100644 >> index 0000000000..fec8c524eb >> --- /dev/null >> +++ b/meta/recipes-extended/stress-ng/stress-ng-0.13.12/0001-Makefile-avoid-calling-sync.patch >> @@ -0,0 +1,35 @@ >> +From 1d1801902a4944c6f5fa521c19b32fbac7342a0c Mon Sep 17 00:00:00 2001 >> +From: Colin Ian King <colin.i.king@gmail.com> >> +Date: Sat, 6 Aug 2022 13:05:59 +0000 >> +Subject: [PATCH] Makefile: avoid calling sync >> + >> +Original commit message: >> +Makefile: use ld-gold if it is available >> + >> +Speed up linking by using ld-gold if is available. Add build >> +time detection to see if compiler allows it >> + >> +MJ: backported only the "sync" removal from Makefile as calling >> + it from do_compile in the middle of big OE world build harms >> + the build time. >> + >> +Upstream-Status: Backport [V0.14.04 c10e5c3f9f5560a085279f4c4b399c2f34cb897d] >> + >> +Signed-off-by: Colin Ian King <colin.i.king@gmail.com> >> +Signed-off-by: Martin Jansa <martin.jansa@gmail.com> >> +--- >> + Makefile | 1 - >> + 1 file changed, 1 deletion(-) >> + >> +diff --git a/Makefile b/Makefile >> +index f8f71c54b..23db4c612 100644 >> +--- a/Makefile >> ++++ b/Makefile >> +@@ -425,7 +425,6 @@ OBJS += $(CONFIG_OBJS) >> + stress-ng: $(OBJS) >> + $(Q)echo "LD $@" >> + $(V)$(CC) $(CPPFLAGS) $(CFLAGS) $(OBJS) -lm $(LDFLAGS) -o $@ >> +- $(V)sync >> + >> + config.h: >> + +$(MAKE) -f Makefile.config STATIC=$(STATIC) -j >> diff --git a/meta/recipes-extended/stress-ng/stress-ng_0.13.12.bb b/meta/recipes-extended/stress-ng/stress-ng_0.13.12.bb >> index 807ecd3466..72dafddaf8 100644 >> --- a/meta/recipes-extended/stress-ng/stress-ng_0.13.12.bb >> +++ b/meta/recipes-extended/stress-ng/stress-ng_0.13.12.bb >> @@ -7,6 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" >> >> SRC_URI = "git://github.com/ColinIanKing/stress-ng.git;protocol=https;branch=master \ >> file://0001-stress-cpu-disable-float128-math-on-powerpc64-to-avo.patch \ >> + file://0001-Makefile-avoid-calling-sync.patch \ >> " >> SRCREV = "f59bcb2fe1e25042e77d5e4942f72bfa026fa305" >> S = "${WORKDIR}/git" >> -- >> 2.44.0 >> >> >> -=-=-=-=-=-=-=-=-=-=-=- >> Links: You receive all messages sent to this group. >> View/Reply Online (#197260): https://lists.openembedded.org/g/openembedded-core/message/197260 >> Mute This Topic: https://lists.openembedded.org/mt/104982006/953399 >> Group Owner: openembedded-core+owner@lists.openembedded.org >> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [rwmacleod@gmail.com] >> -=-=-=-=-=-=-=-=-=-=-=- >>
diff --git a/meta/recipes-extended/stress-ng/stress-ng-0.13.12/0001-Makefile-avoid-calling-sync.patch b/meta/recipes-extended/stress-ng/stress-ng-0.13.12/0001-Makefile-avoid-calling-sync.patch new file mode 100644 index 0000000000..fec8c524eb --- /dev/null +++ b/meta/recipes-extended/stress-ng/stress-ng-0.13.12/0001-Makefile-avoid-calling-sync.patch @@ -0,0 +1,35 @@ +From 1d1801902a4944c6f5fa521c19b32fbac7342a0c Mon Sep 17 00:00:00 2001 +From: Colin Ian King <colin.i.king@gmail.com> +Date: Sat, 6 Aug 2022 13:05:59 +0000 +Subject: [PATCH] Makefile: avoid calling sync + +Original commit message: +Makefile: use ld-gold if it is available + +Speed up linking by using ld-gold if is available. Add build +time detection to see if compiler allows it + +MJ: backported only the "sync" removal from Makefile as calling + it from do_compile in the middle of big OE world build harms + the build time. + +Upstream-Status: Backport [V0.14.04 c10e5c3f9f5560a085279f4c4b399c2f34cb897d] + +Signed-off-by: Colin Ian King <colin.i.king@gmail.com> +Signed-off-by: Martin Jansa <martin.jansa@gmail.com> +--- + Makefile | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/Makefile b/Makefile +index f8f71c54b..23db4c612 100644 +--- a/Makefile ++++ b/Makefile +@@ -425,7 +425,6 @@ OBJS += $(CONFIG_OBJS) + stress-ng: $(OBJS) + $(Q)echo "LD $@" + $(V)$(CC) $(CPPFLAGS) $(CFLAGS) $(OBJS) -lm $(LDFLAGS) -o $@ +- $(V)sync + + config.h: + +$(MAKE) -f Makefile.config STATIC=$(STATIC) -j diff --git a/meta/recipes-extended/stress-ng/stress-ng_0.13.12.bb b/meta/recipes-extended/stress-ng/stress-ng_0.13.12.bb index 807ecd3466..72dafddaf8 100644 --- a/meta/recipes-extended/stress-ng/stress-ng_0.13.12.bb +++ b/meta/recipes-extended/stress-ng/stress-ng_0.13.12.bb @@ -7,6 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" SRC_URI = "git://github.com/ColinIanKing/stress-ng.git;protocol=https;branch=master \ file://0001-stress-cpu-disable-float128-math-on-powerpc64-to-avo.patch \ + file://0001-Makefile-avoid-calling-sync.patch \ " SRCREV = "f59bcb2fe1e25042e77d5e4942f72bfa026fa305" S = "${WORKDIR}/git"
calling 'sync' from do_compile in the middle of big OE world build harms the build time. Signed-off-by: Martin Jansa <martin.jansa@gmail.com> --- .../0001-Makefile-avoid-calling-sync.patch | 35 +++++++++++++++++++ .../stress-ng/stress-ng_0.13.12.bb | 1 + 2 files changed, 36 insertions(+) create mode 100644 meta/recipes-extended/stress-ng/stress-ng-0.13.12/0001-Makefile-avoid-calling-sync.patch