Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 12 Apr 2023 13:08:57 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 270785] Performance and power efficiency regression due to pthread_cond_timedwait() changes
Message-ID:  <bug-270785-227@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D270785

            Bug ID: 270785
           Summary: Performance and power efficiency regression due to
                    pthread_cond_timedwait() changes
           Product: Base System
           Version: 13.2-RELEASE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: bugs@FreeBSD.org
          Reporter: bllcha013@myuct.ac.za

After updating from 13.1-RELEASE-p7 to 13.2-RELEASE-p0, I experienced a
performance and power efficiency regression especially when running Java
programs, in particular the Minecraft server.

After some testing, this appears to be caused by commit
e21c77f80c3b1cf2bd0a9f874e15e7a8e49f0dba [Improve timeout precision of
pthread_cond_timedwait().]. When building the kernel just before this commi=
t,
this regression does not occur, while building with this commit
(n253051-e21c77f80c3b), the regression occurs. The regression is still pres=
ent
in the 6 April 2023 snapshot kernel of 14.0-CURRENT.

I have observed this behavior on two systems, a server with an Intel Xeon X=
3460
(Lynnfield, Nehalem) CPU, as well as a desktop PC with an Intel Core i7-670=
0K
(Skylake) CPU.

When running a kernel with this commit, the WCPU usage of the java process =
in
top is considerably higher at idle than without the commit when running a
Minecraft server (1 to 2% before, 10% to 30% after). In addition, the CPU
spends a lot more time in less power efficient C-states (C1) where before t=
his
commit, the CPU spends much more time in power efficient C-states such as C=
3.
On my server, the CPU used to spend 98% time in C3 while after the commit it
spends only 30% time in C3, leading to higher power consumption, more heat,=
 and
faster fan speeds.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-270785-227>