mirror of
https://github.com/PaperMC/Paper.git
synced 2025-04-07 14:55:18 +02:00
Uses the new ANSIComponentSerializer introduced in Adventure 4.14.0 to serialize components when logging them via the ComponentLogger, or when sending messages to the console. This replaces the old solution which uses legacy jank and custom color conversions, with a new library that handles the conversion and config
31 lines
1.4 KiB
Diff
31 lines
1.4 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Spottedleaf <Spottedleaf@users.noreply.github.com>
|
|
Date: Mon, 30 Aug 2021 04:26:40 -0700
|
|
Subject: [PATCH] Reduce worldgen thread worker count for low core count CPUs
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/Util.java b/src/main/java/net/minecraft/Util.java
|
|
index 5579dad0ba8f2e4ce43883e7d36059c2a2bd1b83..fcade0a121f155dbf4f5f8af66240923d8da460d 100644
|
|
--- a/src/main/java/net/minecraft/Util.java
|
|
+++ b/src/main/java/net/minecraft/Util.java
|
|
@@ -147,7 +147,19 @@ public class Util {
|
|
|
|
private static ExecutorService makeExecutor(String s, int priorityModifier) { // Paper - add priority
|
|
// Paper start - use simpler thread pool that allows 1 thread
|
|
- int i = Math.min(8, Math.max(Runtime.getRuntime().availableProcessors() - 2, 1));
|
|
+ // Paper start - also try to avoid suffocating the system with the worldgen workers
|
|
+ int cpus = Runtime.getRuntime().availableProcessors() / 2;
|
|
+ int i;
|
|
+ if (cpus <= 4) {
|
|
+ i = cpus <= 2 ? 1 : 2;
|
|
+ } else if (cpus <= 8) {
|
|
+ // [5, 8]
|
|
+ i = Math.max(3, cpus - 2);
|
|
+ } else {
|
|
+ i = cpus * 2 / 3;
|
|
+ }
|
|
+ i = Math.min(8, i);
|
|
+ // Paper end - also try to avoid suffocating the system with the worldgen workers
|
|
i = Integer.getInteger("Paper.WorkerThreadCount", i);
|
|
ExecutorService executorService;
|
|
|