PS: Sorry if I didn't realize what BRs is :D

On Wed, Jan 26, 2022 at 3:39 PM Kirk Lund <kl...@apache.org> wrote:

> Hi BRs/Jakov,
>
> I'm familiar with most of these threads, and these ones I know of do not
> spawn more than one thread total. Most of these are quite old, possibly
> predating Executors in Java. I doubt using max priority is important for
> these threads, but you should probably do some perf testing if you want to
> remove setMaxPriority. I recommend using
> https://github.com/apache/geode-benchmarks as well as writing targeted
> JMH micro-benchmarks.
>
> Cheers,
> Kirk
>
> On Mon, Jan 24, 2022 at 3:50 AM Jakov Varenina <jakov.varen...@est.tech>
> wrote:
>
>> Hi community,
>>
>> We have came across to some code in geode that prioritizes some of the
>> threads using
>>
>> https://cr.openjdk.java.net/~iris/se/11/latestSpec/api/java.base/java/lang/Thread.html#setPriority(int).
>>
>> Below you can find links to code.
>>
>>
>> https://github.com/apache/geode/blob/41eb49989f25607acfcbf9ac5afe3d4c0721bb35/geode-core/src/main/java/org/apache/geode/internal/statistics/HostStatSampler.java#L304
>>
>>
>> https://github.com/apache/geode/blob/41eb49989f25607acfcbf9ac5afe3d4c0721bb35/geode-core/src/main/java/org/apache/geode/internal/cache/control/OffHeapMemoryMonitor.java#L92
>>
>>
>> https://github.com/apache/geode/blob/d79a3c78eab96a9e760db07fa42580e61586b9c5/geode-core/src/main/java/org/apache/geode/internal/cache/control/InternalResourceManager.java#L147
>>
>>
>> https://github.com/apache/geode/blob/a5bd36f9fa787d3a71c6e6efafed5a7b0fe52d2b/geode-core/src/main/java/org/apache/geode/internal/tcp/TCPConduit.java#L343
>>
>> Just to add that every new thread inherits parent thread priority, so
>> that means that there will be more thread with max priority in addition
>> to the above threads. Does somebody know why this is set for these
>> particular threads?
>>
>> Additionally, in multiple online resources it is indicated that these
>> priories are not taken into the account by the Linux scheduler unless
>> additional parameters in JVM are set (UseThreadPriorities and
>> ThreadPriorityPolicy), please check links for more information's:
>>
>> https://github.com/openjdk/jdk/blob/jdk8-b120/hotspot/src/share/vm/runtime/globals.hpp#L3369,L3392
>> and
>>
>> https://github.com/openjdk/jdk/blob/jdk8-b120/hotspot/src/os/linux/vm/os_linux.cpp#L3961,L3966
>>
>> Are these priorities that are set in Apache Geode code crucial and
>> should be enabled for better performance, or they shouldn't be used?
>> Also did I maybe miss something and these priorities are somehow used
>> even without setting mentioned JVM parameters?
>>
>> Any help on this topic is welcome and sorry for bothering!
>>
>> BRs/Jakov
>>
>>

Reply via email to