diff --git a/core/src/main/java/com/volmit/iris/Iris.java b/core/src/main/java/com/volmit/iris/Iris.java index fd49641ec..dad3af14c 100644 --- a/core/src/main/java/com/volmit/iris/Iris.java +++ b/core/src/main/java/com/volmit/iris/Iris.java @@ -39,7 +39,7 @@ import com.volmit.iris.engine.object.IrisWorld; import com.volmit.iris.engine.platform.BukkitChunkGenerator; import com.volmit.iris.engine.platform.DummyChunkGenerator; import com.volmit.iris.engine.safeguard.IrisSafeguard; -import com.volmit.iris.engine.safeguard.ServerBoot; +import com.volmit.iris.engine.safeguard.ServerBootSFG; import com.volmit.iris.util.collection.KList; import com.volmit.iris.util.collection.KMap; import com.volmit.iris.util.exceptions.IrisException; @@ -94,7 +94,7 @@ import java.util.Date; import java.util.Map; import static com.volmit.iris.engine.safeguard.IrisSafeguard.unstablemode; -import static com.volmit.iris.engine.safeguard.ServerBoot.passedserversoftware; +import static com.volmit.iris.engine.safeguard.ServerBootSFG.passedserversoftware; @SuppressWarnings("CanBeFinal") public class Iris extends VolmitPlugin implements Listener { @@ -465,9 +465,9 @@ public class Iris extends VolmitPlugin implements Listener { J.s(this::setupPapi); J.a(ServerConfigurator::configure, 20); splash(); - ServerBoot.UnstableMode(); - ServerBoot.SupportedServerSoftware(); - ServerBoot.printincompatiblepluginWarnings(); + ServerBootSFG.UnstableMode(); + ServerBootSFG.SupportedServerSoftware(); + ServerBootSFG.printincompatiblepluginWarnings(); autoStartStudio(); checkForBukkitWorlds(); IrisToolbelt.retainMantleDataForSlice(String.class.getCanonicalName()); diff --git a/core/src/main/java/com/volmit/iris/core/commands/CommandIris.java b/core/src/main/java/com/volmit/iris/core/commands/CommandIris.java index 481d3b2dd..c5e4358be 100644 --- a/core/src/main/java/com/volmit/iris/core/commands/CommandIris.java +++ b/core/src/main/java/com/volmit/iris/core/commands/CommandIris.java @@ -26,7 +26,7 @@ import com.volmit.iris.core.tools.IrisToolbelt; import com.volmit.iris.engine.framework.Engine; import com.volmit.iris.engine.object.IrisDimension; import com.volmit.iris.engine.platform.PlatformChunkGenerator; -import com.volmit.iris.engine.safeguard.ServerBoot; +import com.volmit.iris.engine.safeguard.ServerBootSFG; import com.volmit.iris.util.collection.KList; import com.volmit.iris.util.decree.DecreeContext; import com.volmit.iris.util.decree.DecreeExecutor; @@ -52,7 +52,7 @@ import java.util.concurrent.ExecutionException; import java.util.concurrent.Future; import static com.volmit.iris.core.tools.IrisBenchmarking.inProgress; -import static com.volmit.iris.engine.safeguard.ServerBoot.multiverse; +import static com.volmit.iris.engine.safeguard.ServerBootSFG.multiverse; @Decree(name = "iris", aliases = {"ir", "irs"}, description = "Basic Command") public class CommandIris implements DecreeExecutor { @@ -80,7 +80,7 @@ public class CommandIris implements DecreeExecutor { sender().sendMessage(C.RED + "it is strongly advised for you to take action. see log for full detail"); Iris.safeguard(C.RED + "----------------------------------------------------------------"); Iris.safeguard(C.RED + "Command ran: /iris create"); - ServerBoot.printincompatiblepluginWarnings(); + ServerBootSFG.printincompatiblepluginWarnings(); Iris.safeguard(C.RED + "----------------------------------------------------------------"); } if (name.equals("iris")) { diff --git a/core/src/main/java/com/volmit/iris/core/tools/IrisBenchmarking.java b/core/src/main/java/com/volmit/iris/core/tools/IrisBenchmarking.java index 5503815a7..39d27ffcd 100644 --- a/core/src/main/java/com/volmit/iris/core/tools/IrisBenchmarking.java +++ b/core/src/main/java/com/volmit/iris/core/tools/IrisBenchmarking.java @@ -27,6 +27,8 @@ import java.io.IOException; import java.io.InputStreamReader; import static com.google.common.math.LongMath.isPrime; +import static com.volmit.iris.util.misc.getHardware.getCPUModel; +import static com.volmit.iris.util.misc.getHardware.getDiskModel; public class IrisBenchmarking { static String ServerOS; @@ -237,29 +239,6 @@ public class IrisBenchmarking { return false; } - public static String getCPUModel() { - try { - SystemInfo systemInfo = new SystemInfo(); - CentralProcessor processor = systemInfo.getHardware().getProcessor(); - String cpuModel = processor.getProcessorIdentifier().getName(); - return cpuModel.isEmpty() ? "Unknown CPU Model" : cpuModel; - } catch (Exception e) { - e.printStackTrace(); - return "Unknown CPU Model"; - } - } - - public static String getDiskModel() { - SystemInfo systemInfo = new SystemInfo(); - List diskStores = systemInfo.getHardware().getDiskStores(); - if (!diskStores.isEmpty()) { - HWDiskStore firstDisk = diskStores.get(0); - return firstDisk.getModel(); - } else { - return "Unknown Disk Model"; - } - } - public static void warningFallback() { Iris.info(C.RED + "Using the " + C.DARK_RED + "FALLBACK" + C.RED + " method due to compatibility issues. "); Iris.info(C.RED + "Please note that this may result in less accurate results."); @@ -645,6 +624,4 @@ public class IrisBenchmarking { return 0.0; } - // todo JMH BENCHMARKS - } \ No newline at end of file diff --git a/core/src/main/java/com/volmit/iris/core/tools/IrisPackBenchmarking.java b/core/src/main/java/com/volmit/iris/core/tools/IrisPackBenchmarking.java new file mode 100644 index 000000000..65b4bfe31 --- /dev/null +++ b/core/src/main/java/com/volmit/iris/core/tools/IrisPackBenchmarking.java @@ -0,0 +1,9 @@ +package com.volmit.iris.core.tools; + + +public class IrisPackBenchmarking { + public static void runBenchmark(){ + + } + +} \ No newline at end of file diff --git a/core/src/main/java/com/volmit/iris/engine/IrisEngineMantle.java b/core/src/main/java/com/volmit/iris/engine/IrisEngineMantle.java index 2ba5b5526..f2dd124a6 100644 --- a/core/src/main/java/com/volmit/iris/engine/IrisEngineMantle.java +++ b/core/src/main/java/com/volmit/iris/engine/IrisEngineMantle.java @@ -280,6 +280,7 @@ public class IrisEngineMantle implements EngineMantle { x = Math.max(x, c); x = (Math.max(x, 16) + 16) >> 4; x = x % 2 == 0 ? x + 1 : x; + x = 4; Iris.info("Mantle Size: " + x + " Chunks"); Iris.info(" Object Mantle Size: " + u + " (" + ((Math.max(u, 16) + 16) >> 4) + ")"); Iris.info(" Jigsaw Mantle Size: " + jig + " (" + ((Math.max(jig, 16) + 16) >> 4) + ")"); diff --git a/core/src/main/java/com/volmit/iris/engine/safeguard/IrisSafeguard.java b/core/src/main/java/com/volmit/iris/engine/safeguard/IrisSafeguard.java index 439668519..218fc4845 100644 --- a/core/src/main/java/com/volmit/iris/engine/safeguard/IrisSafeguard.java +++ b/core/src/main/java/com/volmit/iris/engine/safeguard/IrisSafeguard.java @@ -7,7 +7,7 @@ public class IrisSafeguard { public static boolean unstablemode = false; public static void IrisSafeguardSystem() { Iris.info("Enabled Iris SafeGuard"); - ServerBoot.BootCheck(); + ServerBootSFG.BootCheck(); } } diff --git a/core/src/main/java/com/volmit/iris/engine/safeguard/PerformanceSFG.java b/core/src/main/java/com/volmit/iris/engine/safeguard/PerformanceSFG.java new file mode 100644 index 000000000..c978ff38c --- /dev/null +++ b/core/src/main/java/com/volmit/iris/engine/safeguard/PerformanceSFG.java @@ -0,0 +1,23 @@ +package com.volmit.iris.engine.safeguard; + +import oshi.SystemInfo; +import oshi.hardware.GlobalMemory; + +import static com.volmit.iris.util.misc.getHardware.*; + +public class PerformanceSFG { + public static byte CPUPerformanceStage = 3; + public void getPerformance(){ + // Performance Stage 3 = Max Performance, 2=Medium, 1=Low + + SystemInfo systemInfo = new SystemInfo(); + GlobalMemory globalMemory = systemInfo.getHardware().getMemory(); + long totalMemoryMB = globalMemory.getTotal() / (1024 * 1024); + long availableMemoryMB = globalMemory.getAvailable() / (1024 * 1024); + long totalPageSize = globalMemory.getPageSize() / (1024 * 1024); + long usedMemoryMB = totalMemoryMB - availableMemoryMB; + + // Todo RePixelated: Finish this + + } +} diff --git a/core/src/main/java/com/volmit/iris/engine/safeguard/ServerBoot.java b/core/src/main/java/com/volmit/iris/engine/safeguard/ServerBootSFG.java similarity index 99% rename from core/src/main/java/com/volmit/iris/engine/safeguard/ServerBoot.java rename to core/src/main/java/com/volmit/iris/engine/safeguard/ServerBootSFG.java index 27f993b9f..a76a9a5f4 100644 --- a/core/src/main/java/com/volmit/iris/engine/safeguard/ServerBoot.java +++ b/core/src/main/java/com/volmit/iris/engine/safeguard/ServerBootSFG.java @@ -10,7 +10,7 @@ import org.bukkit.plugin.Plugin; import static com.volmit.iris.Iris.instance; import static com.volmit.iris.engine.safeguard.IrisSafeguard.unstablemode; -public class ServerBoot { +public class ServerBootSFG { public static boolean multiverse = false; public static boolean dynmap = false; public static boolean terraform = false; diff --git a/core/src/main/java/com/volmit/iris/engine/safeguard/SafeguardUtils.java b/core/src/main/java/com/volmit/iris/engine/safeguard/UtilsSFG.java similarity index 74% rename from core/src/main/java/com/volmit/iris/engine/safeguard/SafeguardUtils.java rename to core/src/main/java/com/volmit/iris/engine/safeguard/UtilsSFG.java index 221ef1d66..fd2d40708 100644 --- a/core/src/main/java/com/volmit/iris/engine/safeguard/SafeguardUtils.java +++ b/core/src/main/java/com/volmit/iris/engine/safeguard/UtilsSFG.java @@ -1,5 +1,5 @@ package com.volmit.iris.engine.safeguard; -public class SafeguardUtils { +public class UtilsSFG { public static void resetdatapacks(){ } diff --git a/core/src/main/java/com/volmit/iris/util/misc/getHardware.java b/core/src/main/java/com/volmit/iris/util/misc/getHardware.java new file mode 100644 index 000000000..eea952bd2 --- /dev/null +++ b/core/src/main/java/com/volmit/iris/util/misc/getHardware.java @@ -0,0 +1,44 @@ +package com.volmit.iris.util.misc; + +import oshi.SystemInfo; +import oshi.hardware.CentralProcessor; +import oshi.hardware.HWDiskStore; +import oshi.software.os.OperatingSystem; + +import java.util.List; + +public class getHardware { + public static String getServerOS() { + SystemInfo systemInfo = new SystemInfo(); + OperatingSystem os = systemInfo.getOperatingSystem(); + return os.toString(); + } + public static int getCPUThreads(){ + SystemInfo systemInfo = new SystemInfo(); + CentralProcessor processor = systemInfo.getHardware().getProcessor(); + return processor.getLogicalProcessorCount(); + } + + public static String getCPUModel() { + try { + SystemInfo systemInfo = new SystemInfo(); + CentralProcessor processor = systemInfo.getHardware().getProcessor(); + String cpuModel = processor.getProcessorIdentifier().getName(); + return cpuModel.isEmpty() ? "Unknown CPU Model" : cpuModel; + } catch (Exception e) { + e.printStackTrace(); + return "Unknown CPU Model"; + } + } + + public static String getDiskModel() { + SystemInfo systemInfo = new SystemInfo(); + List diskStores = systemInfo.getHardware().getDiskStores(); + if (!diskStores.isEmpty()) { + HWDiskStore firstDisk = diskStores.get(0); + return firstDisk.getModel(); + } else { + return "Unknown Disk Model"; + } + } +}