From 4c70cad262f9e6358f659c55d3b0a4c3f6235b7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?JasonXuDeveloper=20-=20=E5=82=91?= Date: Tue, 18 Apr 2023 15:47:36 +1000 Subject: [PATCH 1/2] minor bug fix for loading hot type in editor --- .../Assets/Dependencies/JEngine/Core/Tool/HotTypeTools.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/UnityProject/Assets/Dependencies/JEngine/Core/Tool/HotTypeTools.cs b/UnityProject/Assets/Dependencies/JEngine/Core/Tool/HotTypeTools.cs index fca2e1f9..7ffa7f14 100644 --- a/UnityProject/Assets/Dependencies/JEngine/Core/Tool/HotTypeTools.cs +++ b/UnityProject/Assets/Dependencies/JEngine/Core/Tool/HotTypeTools.cs @@ -36,12 +36,12 @@ public static AppDomain Domain _cacheDomain = new AppDomain(); // 只有编辑器才会走到这 - ThreadMgr.QueueOnMainThread(async () => + Task.Run(async () => { _cacheDomain.LoadAssembly(new MemoryStream(await DllMgr.GetDllBytes(ConstMgr.MainHotDLLName, true)), null, new PdbReaderProvider()); InitJEngine.InitializeILRuntime(_cacheDomain); - }); + }).Wait(); return _cacheDomain; } } From 7b41157343a0c979bc9656ff2a96649a5567a747 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?JasonXuDeveloper=20-=20=E5=82=91?= Date: Tue, 18 Apr 2023 23:46:07 +1000 Subject: [PATCH 2/2] experimental - dll optimization --- .gitignore | 3 +- .../Assembly-CSharp-Editor.csproj.DotSettings | 3 +- .../Editor/JEngineTools/Optimizer.meta | 3 + .../Optimizer/Optimizer.Helper.cs | 105 +++++ .../Optimizer/Optimizer.Helper.cs.meta | 3 + .../Optimizer/Optimizer.Instructions.cs | 43 ++ .../Optimizer/Optimizer.Instructions.cs.meta | 3 + .../JEngineTools/Optimizer/Optimizer.cs | 410 ++++++++++++++++++ .../JEngineTools/Optimizer/Optimizer.cs.meta | 3 + .../JEngineTools/UnityEditor/MenuItems.cs | 47 +- .../Main/Dll/Hidden~/HotUpdateScripts.dll | Bin 72704 -> 73216 bytes .../Main/Dll/Hidden~/HotUpdateScripts.pdb | Bin 26368 -> 26904 bytes .../Main/Dll/HotUpdateScripts.bytes | Bin 72720 -> 73232 bytes .../Main/Dll/HotUpdateScripts.pdb.bytes | Bin 26368 -> 26904 bytes .../HotUpdateScripts/HotUpdateScripts.csproj | 1 - UnityProject/HotUpdateScripts/Program.cs | 80 +++- UnityProject/optimized.dll | Bin 0 -> 72704 bytes UnityProject/optimized.pdb | Bin 0 -> 26772 bytes 18 files changed, 692 insertions(+), 12 deletions(-) create mode 100644 UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer.meta create mode 100644 UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Helper.cs create mode 100644 UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Helper.cs.meta create mode 100644 UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Instructions.cs create mode 100644 UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Instructions.cs.meta create mode 100644 UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.cs create mode 100644 UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.cs.meta create mode 100644 UnityProject/optimized.dll create mode 100644 UnityProject/optimized.pdb diff --git a/.gitignore b/.gitignore index 05a32241..1d1ff566 100644 --- a/.gitignore +++ b/.gitignore @@ -17,4 +17,5 @@ UnityProject/Assets/Dependencies/ILRuntime/Generated.meta UnityProject/Logs/Packages-Update.log UnityProject/Sandbox/* UnityProject/Logs/* -UnityProject/Build/* \ No newline at end of file +UnityProject/Build/* +UnityProject/HotUpdateScripts/.idea/* \ No newline at end of file diff --git a/UnityProject/Assembly-CSharp-Editor.csproj.DotSettings b/UnityProject/Assembly-CSharp-Editor.csproj.DotSettings index 6e724e72..12b2aba1 100644 --- a/UnityProject/Assembly-CSharp-Editor.csproj.DotSettings +++ b/UnityProject/Assembly-CSharp-Editor.csproj.DotSettings @@ -1,2 +1,3 @@  - True \ No newline at end of file + True + True \ No newline at end of file diff --git a/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer.meta b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer.meta new file mode 100644 index 00000000..3cf8f99c --- /dev/null +++ b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 847c1bc13e3e4cb49876efea15c1dc8b +timeCreated: 1681801176 \ No newline at end of file diff --git a/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Helper.cs b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Helper.cs new file mode 100644 index 00000000..24b49237 --- /dev/null +++ b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Helper.cs @@ -0,0 +1,105 @@ +using ILRuntime.Mono.Cecil.Cil; + +namespace JEngine.Editor +{ + public static partial class Optimizer + { + private static string GetLdLocName(Instruction instruction) + { + var code = instruction.OpCode.Code.ToString(); + if(code.StartsWith("Ldloc")) + { + if(code.EndsWith("S")) + { + return instruction.Operand.ToString(); + } + + return code.Substring(code.Length - 1); + } + + return null; + } + + private static string GetStLocName(Instruction instruction) + { + var code = instruction.OpCode.Code.ToString(); + if(code.StartsWith("Stloc")) + { + if(code.EndsWith("S")) + { + return instruction.Operand.ToString(); + } + + return code.Substring(code.Length - 1); + } + + return null; + } + + private static int GetLdcI4Num(Instruction instruction) + { + var code = instruction.OpCode.Code.ToString(); + if(code.StartsWith("Ldc_I4")) + { + if(code.EndsWith("S")) + { + return (sbyte)instruction.Operand; + } + + if(code.EndsWith("M1")) + { + return -1; + } + + if(code.EndsWith("0")) + { + return 0; + } + + if(code.EndsWith("1")) + { + return 1; + } + + if(code.EndsWith("2")) + { + return 2; + } + + if(code.EndsWith("3")) + { + return 3; + } + + if(code.EndsWith("4")) + { + return 4; + } + + if(code.EndsWith("5")) + { + return 5; + } + + if(code.EndsWith("6")) + { + return 6; + } + + if(code.EndsWith("7")) + { + return 7; + } + + if(code.EndsWith("8")) + { + return 8; + } + + return (int)instruction.Operand; + } + + return 0; + } + } +} \ No newline at end of file diff --git a/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Helper.cs.meta b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Helper.cs.meta new file mode 100644 index 00000000..93959bed --- /dev/null +++ b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Helper.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 91bb7624b24a4c17b403a3532c0071a8 +timeCreated: 1681813163 \ No newline at end of file diff --git a/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Instructions.cs b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Instructions.cs new file mode 100644 index 00000000..3f51a74a --- /dev/null +++ b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Instructions.cs @@ -0,0 +1,43 @@ +using ILRuntime.Mono.Cecil.Cil; + +namespace JEngine.Editor +{ + public static partial class Optimizer + { + private static Instruction NewLdcI4Instruction(int i) + { + switch (i) + { + case -1: + return Instruction.Create(OpCodes.Ldc_I4_M1); + case 0: + return Instruction.Create(OpCodes.Ldc_I4_0); + case 1: + return Instruction.Create(OpCodes.Ldc_I4_1); + case 2: + return Instruction.Create(OpCodes.Ldc_I4_2); + case 3: + return Instruction.Create(OpCodes.Ldc_I4_3); + case 4: + return Instruction.Create(OpCodes.Ldc_I4_4); + case 5: + return Instruction.Create(OpCodes.Ldc_I4_5); + case 6: + return Instruction.Create(OpCodes.Ldc_I4_6); + case 7: + return Instruction.Create(OpCodes.Ldc_I4_7); + case 8: + return Instruction.Create(OpCodes.Ldc_I4_8); + case var _ when i <= 127: + return Instruction.Create(OpCodes.Ldc_I4_S, (sbyte)i); + default: + return Instruction.Create(OpCodes.Ldc_I4, i); + } + } + + private static Instruction NewLdcI8Instruction(long i) + { + return Instruction.Create(OpCodes.Ldc_I8, i); + } + } +} \ No newline at end of file diff --git a/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Instructions.cs.meta b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Instructions.cs.meta new file mode 100644 index 00000000..f4391203 --- /dev/null +++ b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.Instructions.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 5df517f99a66428493a467055384dbca +timeCreated: 1681812989 \ No newline at end of file diff --git a/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.cs b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.cs new file mode 100644 index 00000000..f8450b7b --- /dev/null +++ b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.cs @@ -0,0 +1,410 @@ +using System.Collections.Generic; +using System.IO; +using System.Linq; +using ILRuntime.Mono.Cecil; +using ILRuntime.Mono.Cecil.Cil; +using ILRuntime.Mono.Cecil.Pdb; +using JEngine.Core; +using UnityEngine; + +namespace JEngine.Editor +{ + public static partial class Optimizer + { + private static Code[] _ldcOrLdlocCode = new Code[] + { + Code.Ldc_I4_0, + Code.Ldc_I4_1, + Code.Ldc_I4_2, + Code.Ldc_I4_3, + Code.Ldc_I4_4, + Code.Ldc_I4_5, + Code.Ldc_I4_6, + Code.Ldc_I4_7, + Code.Ldc_I4_8, + Code.Ldc_I4_S, + Code.Ldc_I4, + Code.Ldc_I4_M1, + Code.Ldc_I8, + Code.Ldloc_0, + Code.Ldloc_1, + Code.Ldloc_2, + Code.Ldloc_3, + Code.Ldloc_S + }; + + + /// + /// 优化 + /// + /// Assembly + /// symbol + public static void Optimize(string dllPath, string pdbPath) + { + //模块 + var module = LoadModule(dllPath, pdbPath); + //类型 + List types = new List(); + + if (module.HasTypes) + { + foreach (var t in module.GetTypes()) //获取所有此模块定义的类型 + { + types.Add(t); + + //测试 + if (t.FullName == "HotUpdateScripts.Test") + { + OptimizeMethod(t.Methods.First(m => m.Name == "Optimized")); + } + } + } + + var optimizedPdbStream = new FileStream("optimized.pdb", FileMode.Create); + var writerParameters = pdbPath != null + ? new WriterParameters + { + WriteSymbols = true, SymbolStream = optimizedPdbStream, + SymbolWriterProvider = new PdbWriterProvider() + } + : new WriterParameters(); + module.Write("optimized.dll", writerParameters); + if (pdbPath != null) optimizedPdbStream.Dispose(); + + var optimizedModule = LoadModule("optimized.dll", "optimized.pdb"); + //check type matches + if (optimizedModule.HasTypes) + { + foreach (var t in optimizedModule.GetTypes()) + { + if (types.All(type => type.MetadataToken != t.MetadataToken)) + { + Log.PrintError("Type not found: " + t); + } + } + } + } + + /// + /// 从流加载Assembly,以及symbol符号文件(pdb) + /// + /// + /// + /// + private static ModuleDefinition LoadModule(string dllPath, string pdbPath) + { + MemoryStream dllStream = new MemoryStream(File.ReadAllBytes(dllPath)); + MemoryStream pdbStream = null; + if (File.Exists(pdbPath)) + { + pdbStream = new MemoryStream(File.ReadAllBytes(pdbPath)); + } + + var module = ModuleDefinition.ReadModule(dllStream); //从MONO中加载模块 + + if (pdbStream != null) + { + var symbolReader = new PdbReaderProvider(); + module.ReadSymbols(symbolReader.GetSymbolReader(module, pdbStream)); //加载符号表 + } + + return module; + } + + /// + /// 优化加法 + /// + /// + private static void OptimizeMethod(MethodDefinition method) + { + var processor = method.Body.GetILProcessor(); + + var oldInstructionsCount = method.Body.Instructions.Count; + Debug.Log($"读取{method.Name}的指令(共{oldInstructionsCount}条指令):"); + int index = 0; + Dictionary constStack = new Dictionary(); + Dictionary loadStack = new Dictionary(); + while (true) + { + var max = method.Body.Instructions.Count; + if (index >= max) + { + break; + } + + var instruction = method.Body.Instructions.ElementAt(index); + + Debug.Log( + $"index: {index + 1}/{max} instruction: {instruction}"); + + //记录位置 + RecordLastTimeLoadStackValue(instruction, loadStack, ref index, processor); + + //更新常量 + if (CheckConst(instruction, constStack, ref index)) + { + Debug.Log($"当前指令:\n{string.Join("\n", method.Body.Instructions)}"); + continue; + } + + //优化数学运算 + if (OptimizeArithConst(instruction, constStack, ref index, processor)) + { + Debug.Log($"当前指令:\n{string.Join("\n", method.Body.Instructions)}"); + continue; + } + + + index++; + } + + var newInstructionsCount = method.Body.Instructions.Count; + Debug.Log( + $"从{oldInstructionsCount}条指令优化到{newInstructionsCount}条指令,减少了{oldInstructionsCount - newInstructionsCount}条指令"); + Debug.Log($"当前指令:\n{string.Join("\n", method.Body.Instructions)}"); + } + + /// + /// 记录上次load位置 + /// + /// + /// + /// + /// + private static void RecordLastTimeLoadStackValue(in Instruction instruction, Dictionary loadStack, + ref int index, ILProcessor processor) + { + var key = GetStLocName(instruction); + if (key != null && instruction.Previous != null) + { + //stloc.s key 上一句是设置为常量 + if (_ldcOrLdlocCode.Contains(instruction.Previous.OpCode.Code)) + { + //看看是不是之前被设置为常量并st过 + if (loadStack.TryGetValue(key, out var oldIndex)) + { + //是的话判断这两次设置常量期间有没有ldloc.s key过,没的话可以把上次的ld和stloc.s key删除 + var hasLd = false; + for (int i = oldIndex + 1; i < index; i++) + { + var tempInstruction = processor.Body.Instructions[i]; + if (tempInstruction.OpCode.Code == Code.Ldloc_S && + tempInstruction.Operand.ToString() == key) + { + hasLd = true; + break; + } + } + + //如果没有ld key,说明上次st的值已经被覆盖,可以删除 + if (!hasLd) + { + var lastLd = processor.Body.Instructions[oldIndex]; + var lastSt = processor.Body.Instructions[oldIndex + 1]; + lastLd.Previous.Next = lastSt.Next; + lastSt.Next.Previous = lastLd.Previous; + processor.Remove(lastLd); + processor.Remove(lastSt); + Debug.LogWarning($"删除了不会起作用的ld和st: {lastLd} -> {lastSt}"); + index = oldIndex + 1; + } + } + + loadStack[key] = index - 1; + } + } + } + + /// + /// 缓存常量数字 + /// + /// + /// + /// + /// 结果 + private static bool CheckConst(in Instruction instruction, Dictionary constStack, + ref int index) + { + string key; + index++; + switch (instruction.OpCode.Code) + { + case Code.Stloc_0: + case Code.Stloc_1: + case Code.Stloc_2: + case Code.Stloc_3: + case Code.Stloc_S: + key = GetStLocName(instruction); + var previous = instruction.Previous; + switch (previous.OpCode.Code) + { + case Code.Ldloc_0: + case Code.Ldloc_1: + case Code.Ldloc_2: + case Code.Ldloc_3: + case Code.Ldloc_S: + //获取需要压入栈的值 + var prevKey = GetLdLocName(previous); + if (constStack.TryGetValue(prevKey, out var value)) + { + constStack[key] = value; + return true; + } + + break; + case Code.Ldc_I4: + case Code.Ldc_I4_M1: + case Code.Ldc_I4_0: + case Code.Ldc_I4_1: + case Code.Ldc_I4_2: + case Code.Ldc_I4_3: + case Code.Ldc_I4_4: + case Code.Ldc_I4_5: + case Code.Ldc_I4_6: + case Code.Ldc_I4_7: + case Code.Ldc_I4_8: + case Code.Ldc_I4_S: + //获取需要压入栈的值 + key = GetStLocName(instruction); + constStack[key] = GetLdcI4Num(previous); + return true; + } + + break; + } + + index--; + + return false; + } + + /// + /// 优化数学计算 + /// + /// + /// + /// + /// + /// 结果 + private static bool OptimizeArithConst(in Instruction instruction, Dictionary constStack, + ref int index, ILProcessor processor) + { + /* + * TODO 压缩连续计算(需要同级别) + * + * IL_001c: ldloc.1 + * IL_001d: add + * IL_0020: ldc.i4.s 30 + * IL_0021: add + * => + * if ldloc.1 is const: + * IL_001c: ldloc.1 + 30 + * IL_0021: add + * + * TODO 修bug,偶尔会优化出错误结果(负数) + */ + + Stack nums = new Stack(); + //如果instruction一直到add之类的都是(ldc.i4.s或ldc.i4.x,x是0~8)或(ldloc.s或ldloc.y,y是0~3) + Code[] desired = _ldcOrLdlocCode; + //开始检查后面的是否可以优化 + var current = instruction; + int newIndex = index; + //确保读到的东西是想要的 + while (current != null && desired.Contains(current.OpCode.Code)) + { + newIndex++; + string key = GetLdLocName(current); + //读取常量 + if (key != null) + { + //有常量 + if (constStack.TryGetValue(key, out var value) && long.TryParse(value.ToString(), out var num)) + { + nums.Push(num); + } + //不符合优化要求 + else + { + current = null; + break; + } + } + else + { + nums.Push(GetLdcI4Num(current)); + } + + //下一个 + current = current.Next; + } + + //如果读到头了 + if (current != instruction && current != null && nums.Count >= 2) + { + //如果是add/sub/mul/div + var code = current.OpCode.Code; + if (code == Code.Add || code == Code.Sub || code == Code.Mul || code == Code.Div || + code == Code.Rem) + { + //计算结果 + long result; + if (code == Code.Add) + { + var rhs = nums.Pop(); + var lhs = nums.Pop(); + result = lhs + rhs; + } + else if (code == Code.Sub) + { + var rhs = nums.Pop(); + var lhs = nums.Pop(); + result = lhs - rhs; + } + else if (code == Code.Mul) + { + var rhs = nums.Pop(); + var lhs = nums.Pop(); + result = lhs * rhs; + } + else if (code == Code.Div) + { + var rhs = nums.Pop(); + var lhs = nums.Pop(); + result = lhs / rhs; + } + else + { + var rhs = nums.Pop(); + var lhs = nums.Pop(); + result = lhs % rhs; + } + + //看result能不能转int + Instruction newLdcI4Instruction; + if (result <= int.MaxValue) + newLdcI4Instruction = NewLdcI4Instruction((int)result); + else + newLdcI4Instruction = NewLdcI8Instruction(result); + //把current替换成newLdcI4Instruction + newLdcI4Instruction.Offset = current.Offset; + newIndex = processor.Body.Instructions.IndexOf(current); + //替换 + processor.Replace(newIndex, newLdcI4Instruction); + //老的是current.prev.prev + processor.RemoveAt(newIndex - 1); + processor.RemoveAt(newIndex - 2); + + newLdcI4Instruction.Next = processor.Body.Instructions.ElementAt(newIndex - 1); + newLdcI4Instruction.Previous = processor.Body.Instructions.ElementAt(newIndex - 3); + // Debug.Log($"new: {newLdcI4Instruction}, new.prev: {newLdcI4Instruction.Previous}, new.next: {newLdcI4Instruction.Next}"); + + Debug.LogWarning($"成功将第{newIndex - 2}个指令到第{newIndex}的指令优化为{newLdcI4Instruction}"); + return true; + } + } + + return false; + } + } +} \ No newline at end of file diff --git a/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.cs.meta b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.cs.meta new file mode 100644 index 00000000..dd5606c2 --- /dev/null +++ b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/Optimizer/Optimizer.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 1e24c0fc98bb4236afec7cfe2605c4eb +timeCreated: 1681796888 \ No newline at end of file diff --git a/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/UnityEditor/MenuItems.cs b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/UnityEditor/MenuItems.cs index e38e1a08..2a53d7b0 100644 --- a/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/UnityEditor/MenuItems.cs +++ b/UnityProject/Assets/Dependencies/JEngine/Editor/JEngineTools/UnityEditor/MenuItems.cs @@ -23,9 +23,15 @@ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. + #if UNITY_EDITOR -using System.Diagnostics; +using System.IO; using System.Reflection; +using System.Threading; +using System.Threading.Tasks; +using ILRuntime.CLR.TypeSystem; +using ILRuntime.Mono.Cecil.Pdb; +using ILRuntime.Runtime.Enviorment; using JEngine.Core; using UnityEditor; using UnityEngine; @@ -35,17 +41,48 @@ namespace JEngine.Editor [Obfuscation(Exclude = true)] internal class MenuItems { - [MenuItem("JEngine/Open Documentation",priority = 1999)] + [MenuItem("JEngine/Optimize Dll &o")] + public static void OptimizeDll() + { + var dllPath = ConstMgr.DLLSourceFolder + ConstMgr.MainHotDLLName + ConstMgr.DLLExtension; + var pdbPath = ConstMgr.PdbSourceFolder + ConstMgr.MainHotDLLName + ConstMgr.PdbExtension; + //execute Optimizer.Optimize(dllPath, pdbPath); in a new thread with timeout (using cancellation token), if timeout then cancel the task + var cts = new CancellationTokenSource(); + var task = Task.Run(() => Optimizer.Optimize(dllPath, pdbPath), cts.Token); + if (task.Wait(10000)) + { + Debug.Log("Optimize Dll Success"); + } + else + { + cts.Cancel(); + Debug.LogError("Optimize Dll Timeout"); + } + } + + [MenuItem("JEngine/Test Optimized Dll &r")] + public static void TestOptimizedDll() + { + AppDomain appdomain = new AppDomain(); + appdomain.LoadAssembly(new MemoryStream(File.ReadAllBytes("optimized.dll")), + new MemoryStream(File.ReadAllBytes("optimized.pdb")), new PdbReaderProvider()); + var type = (ILType)appdomain.GetType("HotUpdateScripts.Test"); + var instance = appdomain.Instantiate("HotUpdateScripts.Test"); + var method = type.GetMethod("DoTest", 0); + appdomain.Invoke(method, instance, null); + } + + [MenuItem("JEngine/Open Documentation", priority = 1999)] public static void OpenDocument() { Application.OpenURL("https://docs.xgamedev.net/"); } - - [MenuItem("JEngine/Open on Github",priority = 2000)] + + [MenuItem("JEngine/Open on Github", priority = 2000)] public static void OpenGithub() { Application.OpenURL("https://github.com/JasonXuDeveloper/JEngine"); } } } -#endif +#endif \ No newline at end of file diff --git a/UnityProject/Assets/HotUpdateResources/Main/Dll/Hidden~/HotUpdateScripts.dll b/UnityProject/Assets/HotUpdateResources/Main/Dll/Hidden~/HotUpdateScripts.dll index 03ab93a4eafc9c59efe3da5bb93361661498bfb4..689b335bd485df65013dd099062f4bfdabadd6fc 100644 GIT binary patch delta 21444 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 diff --git a/UnityProject/Assets/HotUpdateResources/Main/Dll/Hidden~/HotUpdateScripts.pdb b/UnityProject/Assets/HotUpdateResources/Main/Dll/Hidden~/HotUpdateScripts.pdb index e7b47d9e3c7669b01dcdb1beed14fb0cab2ec8e0..48b80a4c31449133d8cec5de26f150e09d81e566 100644 GIT binary patch delta 3673 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 diff --git a/UnityProject/Assets/HotUpdateResources/Main/Dll/HotUpdateScripts.bytes b/UnityProject/Assets/HotUpdateResources/Main/Dll/HotUpdateScripts.bytes index 459055a4375d72b827ef6501e2ab4e5fe3793449..549c2c67f4548870cbdc1a0f2abdd0010dd40160 100644 GIT binary patch delta 48070 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 VQT9NOzD*l48!;EvO8+Z?{U6)V@GJlT diff --git a/UnityProject/Assets/HotUpdateResources/Main/Dll/HotUpdateScripts.pdb.bytes b/UnityProject/Assets/HotUpdateResources/Main/Dll/HotUpdateScripts.pdb.bytes index e7b47d9e3c7669b01dcdb1beed14fb0cab2ec8e0..48b80a4c31449133d8cec5de26f150e09d81e566 100644 GIT binary patch delta 3673 zcma)9dvH|M8ULNTyLazy-XtL+8?xj@UZh|`UYpHqco~f_l$aWl7?uPBp&{Tx=uj-X zYf-UdA$YZ>jWnS&#SU6*Q$^d(5VdMsA%zOn8CzwhPCH|nvHZ~jePDm*WV77T&Xhaz z{m%FMzVE!x`R=`uDKY#TF;v-kHV??#3;ZG<_*hVH*%|5^*t7$Do-YLKEc04h@FMjg zso&Xp*K(GD1;G1_1fk|(Z_tJ+upd~d;00ILqiz_?erzF-CdNw zP@hXVMg0zz&rzsi@X#-tGi5*}WsHV;N(yCaqF8*>zP7nSpp!C0$z)7-C4KQH86%1( z<2!MC8r)Sg0ckj1m4XVDgUHo z`y5zC>7#s?GD-Oz<*IL{vIFgMIa#kiR_;~hv@OejBd#^B>o`okciN@ndfXu`0+kK2 zG_XUJQkRbduPE-oo3ZlDP5zH!_RDd*14kMso_C&4318u+e@&eR;32kl)xzaDxkmo= zn12cR-^rh{@asszNQ^t_hq%G7*#MiE9ryp0$4s~Ie!138i-C6nZsCbnkSmdD;a%jJ zVou!uJ{!yyIdPsyzt_U$fac%CbN_>Luk+c+%nao26>94WyS@Nv;EQS^?S-`?~b8t&VdAvip1NTcY2k7L zcalFF+p;jzPu#%1kV|P|z~NW`(+%z-|F(tSO+Fgq^XYFUAB%B$W>&GG8NQHwwZ&gf zzUBrGLyl0B8)@V&O6&_FH%|`2g$8#LF3OzsVo6@Mm4jv=%!mg86w*y4mH? zZ$-jCV6Or{XEhD-WZ58h5BM=fK<<==7l<|tF%meh;^kPSUp}&~z$&7KHfiAXkd~7~ z4IRoNBLzY%>2?3zJyfFIpvkQ2C3@`oeKG)jC=o| z9&S=iJVbQhBcf0f)9@|TrJN*Jnsz;AsZ;jv6E!?QwBZSQc{$A&JbB^iVNEH^1ktWy z9QYw41ojd&g@E(|FUReOd8hl8ZO)A38R|AfRlMA{>D~KZI4rY>fUKaYHTZ7?_NkZy zL=7RLjaOO@RNf~C-X`jJkLbi7h=%%TaN%Fn-ORZ_0uqRc>T)Nk$tU9ky(wHc_MfV{ zPgAG5RIO#%^a;nStR~RRP)*sHFR1g7D2u!WHpnz(S1aK_gu0H0iMJdn(<*!6Gi+YY z&JsT}UGpycz)NQn4Sb`l<6ESSv)Ia9dyx5clo{t&%rb8>v%JM@@>^z*3(N}nA|zIc zK`}6~BF^pDS^}>Nqf3Ic9IXn{@5`)Ay?{S#3zUbfL6Y}KT==7ZlBR_XleElh2$bpQZ-@|25Dh#- zy75synVJ_Y?|1UUnR61Uou}TC^J7Oxa57* zo86wV_LCna)V(rt{%>uMjpx6+Yk%POCeP6geLaDB!+pj;@r^ zY$Qp{5qm`BNiA|ri|(&k&r$Sp6mE@;Bxqqa&SBV~%O*K=)|Ql-j$DnmljC>GcG5+< zC=pA=RuS1RBBLVmli5PGw&O-?x7--70`$!TkxL?Io>_O*7DdoJ+umkgY&Q~J9-*b= zK0E>hH<*<^R#=2F!4GePY|R zp%kdyX1?9MQgoQfJ#)l%v#6)6xJ&nlTz(l;Kgf+J;*XY7GX!^P5#P()5cD{?*xQ5_ zGQZN3BSPlko<(A#In}dD?40myyeRykyLnKyP@3&289n#S%<~)Yip`SPc)Y|L#wG^avB%>rA&x1KkeVfy!3=l>d%(qsTAG#_ zM?{GUU|Wv>Nvd?(3Mm^((kX2PrJB}+C}fkGwo0P3xUE{L3Mj4GN~Kh^=iXUz>-JYi z`p!M)TkgBtyKheaOoZMO)3w{3#X#{P;Gb+i5#(JDAK0^RXdL`~SOPfN7H{doC*;$T z-?wGmTDGI5z=<~MyGQr$rXI99wr#ysanJGb+|D=Ce{*}@sV&!MrgKWV8B1foU!q+n z&!zpCyoT)yG*XPuytRI@Ot_OaMTd`;L3=w=A)axzbgUs)zjSO{L?bqSq~XX@;BGiO;gE+?Id;8Ofn26Kb3u(>|rwa`;+i0)JB4!m8$YifUYVSZNm~;_c+T_;Ydp z*`(iv9c__l%Fi=`H;{%SYTJPn_IFd$Hypq%EJ?=y#`7S==X#X+hNgLD;Szbt{6Xr4 zn(n2}6t^Yg9||t^GT})&QkjseX*r<0d3yOg?ctyj6OfBqsKq_hC7Q0FE*F)_{6%uJ zD>cUgCRA%Wi@HYBGQLLBi>T{0-NhAa()2+Nu31zkA1Dufi>7PjVQbYK+o;<#Jx1NG zX*q+tsh^5(*&UkZvrt64hw-EFcp3Ft>SLO|m-={I2Md|dLB~|wAuoYW_LR_7)a$f( zHT8N;%K>fF^cmJ}()3Rl@6z;p)LTVOqW>TsVL|uj4xC}a4&h5A;IO6_lgk@yC--zZ zKHv=2_wfM?fvT1u+f%vI37vKoz;*9?R~w6CHS+XkjJMjR%Me z&_hhaFtali$_i3 z%5mW=wE#cOtdbau0^cQz`4NxCo-21XF%p~Hfv>ARqq0=((*ME}@<0g40z*yyzYz$j zoFha72Z#`B_<)##t3(Ueh;G~RXNvqU$}*ZB)2N0EundK6j6Bf8OAKUZvGygpiL!fuF`y0N>#UuI%+qrc38 zkLbqw#xOlc8>0#f%1xvNvkS^okne4y=<)icE89=cBi@kWA@Uh-Sn)9VS#Om17cVMI z{KFe2UTO+gSa^l##)T%VFk$(y!orOvKlvt~pS;}{C65p-*hDwJ?JKA>@kbvU3m^N! z6y?ox#1W!}E+S{p9Ii64q%B-!;jz|ml^gH2qT0l=9(6wIs_dS0%LO1QJ+egJtd&7=VBXr9?zoTFHZBOq?;)dQ_vCAIr z?O2@oQ&!EDLOr$Iax zOcM^%u$Dns2hD6D#A+jFC?0!4kL57dVB`$j`F-CKd+li7A+gbJ?Y~Wo*xmiBQ#V<8 zVzDS%4XhfqPxbp!yJC(?pfO-y?eEClD(9*`S&7!n6Ghtr&px|tU}bu@l>Fk{#miHa z+Fu>GU2L|W9`J}U``o~tT!KFgY!n9~wS#k_Iq(I3s`k<*0`Kr|!!_DO;Bl_q8QMf3 mCk3db(MLR^*hvfcK5ZgkKR7%i#_it?S6O3bUPICSz`p^+Ft{-Q diff --git a/UnityProject/HotUpdateScripts/HotUpdateScripts.csproj b/UnityProject/HotUpdateScripts/HotUpdateScripts.csproj index cda71d68..a87b8eba 100644 --- a/UnityProject/HotUpdateScripts/HotUpdateScripts.csproj +++ b/UnityProject/HotUpdateScripts/HotUpdateScripts.csproj @@ -96,7 +96,6 @@ - diff --git a/UnityProject/HotUpdateScripts/Program.cs b/UnityProject/HotUpdateScripts/Program.cs index 3246d4e9..b050920b 100644 --- a/UnityProject/HotUpdateScripts/Program.cs +++ b/UnityProject/HotUpdateScripts/Program.cs @@ -23,8 +23,10 @@ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. -using UnityEngine; + +using System.Diagnostics; using JEngine.Core; +using Debug = UnityEngine.Debug; namespace HotUpdateScripts { @@ -39,8 +41,8 @@ public static void SetupGame() foreach (var innerEx in e.Exception.InnerExceptions) { Debug.LogError($"{innerEx.Message}\n" + - $"ILRuntime StackTrace: {innerEx.Data["StackTrace"]}\n\n" + - $"Full Stacktrace: {innerEx.StackTrace}"); + $"ILRuntime StackTrace: {innerEx.Data["StackTrace"]}\n\n" + + $"Full Stacktrace: {innerEx.StackTrace}"); } }; } @@ -52,4 +54,74 @@ public static void RunGame() //的方法一,把生成的平台改成Any CPU(默认是小写的,windows下无法生成) } } -} + + /// + /// 测试dll优化 + /// + public class Test + { + public void DoTest() + { + Debug.Log($"original(1) = {Original(1)}"); + Debug.Log($"optimized(1) = {Optimized(1)}"); + RunTest(10); + RunTest(100); + RunTest(1000); + RunTest(10000); + RunTest(100000); + RunTest(1000000); + } + + public void RunTest(int cnt = 100000) + { + Stopwatch sw = new Stopwatch(); + Debug.Log($"{cnt}次计算"); + sw.Start(); + int a = 0; + int i = cnt; + while (i-- > 0) + { + a = Original(i); + } + + sw.Stop(); + Debug.Log($"Original: {sw.ElapsedMilliseconds}ms"); + + sw.Restart(); + i = cnt; + while (i-- > 0) + { + a = Optimized(i); + } + + sw.Stop(); + Debug.Log($"Optimized: {sw.ElapsedMilliseconds}ms"); + } + + public int Original(int x) + { + int a = 5; + int b = 20; + int c = 10; + c = a; + int d = 5 * a; + int e = d; + int f = e / 2; + int g = f + a + b + c * 6 - b / 4; + return g + b % 3; + } + + public int Optimized(int x) + { + int a = 5; + int b = 20; + int c = 10; + c = a; + int d = 5 * a; + int e = d; + int f = e / 2; + int g = f + a + b + c * 6 - b / 4; + return g + b % 3; + } + } +} \ No newline at end of file diff --git a/UnityProject/optimized.dll b/UnityProject/optimized.dll new file mode 100644 index 0000000000000000000000000000000000000000..c1191ae5943102e6053702ed2f120d04c711126c GIT binary patch literal 72704 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

sguvvnkwy^F->NS`1I%ryCzJDVvwy@9r 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 z

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 literal 0 HcmV?d00001