「通用進階核心」:修訂間差異

建立內容為「'''通用進階核心架構''' (英語:'''U'''niversal '''A'''dvanced '''C'''ore,縮寫:'''UAC'''),是一個用在Java語言的底層核心架構。架構的特色就是「發揮硬體本身的真正實力(效能)」,'''使用更少的資源'''(如'''使用的記憶體 8G -> 1G''')'''達到更好的效能'''(如'''幀數FPS 10 -> 100''')。 架構的開發始於2017年7月14日,原因來自於同年2月至6月多次出現LAG、卡頓。當時主…」的新頁面
 
無編輯摘要
 
(未顯示由 2 位使用者於中間所作的 10 次修訂)
第1行: 第1行:
'''通用進階核心架構''' (英語:'''U'''niversal '''A'''dvanced '''C'''ore,縮寫:'''UAC'''),是一個用在Java語言的底層核心架構。架構的特色就是「發揮硬體本身的真正實力(效能)」,'''使用更少的資源'''(如'''使用的記憶體 8G -> 1G''')'''達到更好的效能'''(如'''幀數FPS 10 -> 100''')。
'''通用進階核心架構''' (英語:Universal Advanced Core,縮寫:'''UAC'''),又稱'''架構''''''UAC 架構''''''超級架構''',是一個用在 Java 語言的底層核心架構。架構的特色就是「發揮硬體本身的真正效能」,'''使用更少的資源'''(如'''使用的記憶體 8G -> 1G''' )'''達到更好的效能'''(如 '''FPS 10 -> 100''')。


架構的開發始於2017年7月14日,原因來自於同年2月至6月多次出現LAG、卡頓。當時主機使用I7-2700K(OC4.6GHz)+8G RAM投入伺服器+SSD。很明顯的清楚電腦硬體效能很好,但是實際狀況卻不理想,就在7月開始著手研究,14日成功開發第一代UAC架構。
== 緣由 ==
[[檔案:106-07-14 VisualGC.jpg|縮圖|開發第一代時的監控畫面。]]
架構的開發始於[[106年]][[7月14日]],原因來自於[[中華麥塊]][[106年]]2月至6月多次出現 LAG、卡頓。當時主機使用 i7-2600K (OC 4.6GHz) + 16G RAM 投入伺服器+SSD。硬體規格優秀,但是實際狀況卻不理想,就在7月開始著手研究,14日成功開發第一代 UAC 架構。


'''第一代UAC'''
== 使用環境與目標 ==


開發於2017年7月,成功開發的重要幫助者:Kanade
=== 環境 ===
適合用於:
* 原味生存
* 模組生存
* 生電
* 小遊戲


對象:'''Minecraft伺服器'''
=== 目標 ===
以下為經過官方測試有效且穩定使的。


優點:極棒的效能(如果你有開服,那就是把你伺服器的效能乘上100倍就等於此架構的效能),可以一直開服都不用關閉重開
* Ultralight MIDI Player


缺點:極高的資源消耗(例如你要給伺服器8G記憶體,那你就要給他25G才能使用),'''只能使用在Java7''',無法使用在玩家上
* bluemap-cli


'''第二代UAC'''
* Minecraft 伺服器
*# vanilla
*# bukkit
*# spigot
*# paper
*# purpur
*# folia
*# deerfolia
*# luminol
*# forge
*# fabric
*# kcauldron
*# thermos
*# crucible
*# bungeecord
*# velocity
* Minecraft 遊戲
*# vanilla
*# forge
*# fabric


開發於2017年10月,成功開發的重要幫助者:Kanade
== 更新歷史 ==


適用對象:'''Minecraft伺服器'''
=== '''第一代 UAC''' ===
開發於[[106年]]7月,使用 i7-2700K (OC 4.6GHz) + 16G RAM 卻仍不理想進而開發,以更大量的記憶體為代價消除了 GC 的問題。


優點:優秀的少量資源消耗(例如你要給伺服器4G記憶體,那你就給他4G即可),可以一直開服都不關閉重開
==== 對象 ====


缺點:效能表現輸一代不少,無法使用在玩家上
# Minecraft 伺服器。


改變:減少資源消耗
==== 優點 ====


'''第三代UAC'''
# 優秀的效能。
# 可以一直開服都不用關閉重開。


開發於2018年2月,成功開發的重要幫助者:ELA_SCP
==== 缺點 ====


對象:'''Minecraft玩家'''
# 極高的資源消耗(例如你要給伺服器 8G 記憶體,那你就要給他 25G 才能使用)。
# 只能使用在 Java 7。
# 無法使玩家上。


優點:極棒資源消耗(即使電腦好也能順暢玩),讓麥塊的硬門檻大幅降低,本來不能玩舊電腦也能玩麥塊了
=== '''第二代 UAC''' ===
開發於[[106年]]10月,隨著 UAC 誕生後解決了效能問題,但高昂的記憶體使用也給了麻煩。因此重新平衡犧牲些效能來記憶用量得以控制在較少量。


缺點:遊戲開久會越來越卡,無法使在伺服器上
==== 對象 ====


改變:與一、二代用途不同,故無法比較
# Minecraft 伺服器。


'''第四代UAC'''
==== 優點 ====


開發於2018年7月成功發的要幫助者:Zygarde
# 優秀的少量資源消耗(例如你要給伺服器 4G 記憶體那你就給他 4G 即可)。
# 可以一直服都不用關閉開。


適用對象:'''Minecraft玩家、Minecraft伺服器、Ultralight MIDI Player、與任何Java程式'''
==== 缺點 ====


優點:錯的量資源消耗,優秀的效能,特高的相容性(所有Java程式都可以使用)
# 效能表現輸一代不少
# 無法使用在玩家上。


缺點:偶爾會LAG一下
==== 改變 ====


改變:提升效能以及光影FPS
# 減少資源消耗。


'''第五代UAC'''
=== '''第三代 UAC''' ===
開發於[[107年]]2月,成功開發的重要幫助者:ELA_SCP。鑑於[[中華麥塊]]的地圖越來越大,建築越來越多,玩家的電腦也逐漸不堪負荷,使得 FPS 下滑。按照前兩代的開發經驗,從玩家的角度出發設計了第三代。調整成適合短期爆發的模式,讓遊戲得以變順。因此只要玩家不掛機就能讓遊戲變得順暢許多。並且也讓資源消耗降低,原版甚至可以只給遊戲 512M 記憶體就能順暢玩。


開發於2018年12月,成功開發的重要幫助者:Rumia
==== 適用對象 ====


適用對象:'''Minecraft伺服器'''
# Minecraft 玩家。


優點:優秀的少量資源消耗,最佳化WorldEdit(神奇小木斧)的效能表現
==== 優點 ====


缺點:無法使用在家上
# 極棒的少量資源消耗(即使電腦不好也能順暢的)。
# 讓麥塊的硬體門檻大幅降低,本來不能玩的舊電腦也能玩麥塊了。


改變:提升效能、最佳化WorldEdit
==== 缺點 ====


'''第六代UAC'''
# 遊戲開久會越來越卡。
# 無法使用在伺服器上。


開發於2018年12月,成功開發的重要幫助者:Kanade
==== 改變 ====


對象:'''Minecraft玩家、Ultralight MIDI Player'''
# 與一、二代途不同,故無法比較。


優點:減少處理器(CPU)依賴顯示卡(GPU)的效能(FPS)表現
=== '''第四代 UAC''' ===
開發於[[107年]]7月,成功開發的重要幫助者:Zygarde。該玩家使用 Ultralight MIDI Player 時遇上了效能問題因此量身訂造。著重在 GC 的最佳,在 Ultralight MIDI Player 上有很好的效果之後帶回 Minecraft 做二次調整。因此伺服器與玩家皆使用,本次的 GC 最佳化甚至一直沿用到了最新代仍在使用,效果非常良好。惟這代使用在玩家上時會偶爾卡一下。


缺點:無法使在伺服器上
==== 對象 ====


改變:FPS提升
# Minecraft 玩家。
# Minecraft 伺服器。
# Ultralight MIDI Player。
# 與任何 Java 程式。


'''第七代UAC'''
==== 優點 ====


開發於2019年1月,成功開發重要幫助者:Kanade
# 不錯少量資源消耗。
# 優秀的效能。
# 特高的相容性(所有 Java 程式都可以使用)。


適用對象:'''Minecraft玩家、Ultralight MIDI Player'''
==== 缺點 ====


優點:最佳化顯示卡(GPU)的效能(FPS)表現
# 偶爾會 LAG 一下。


缺點:無法使用在伺服器上
==== 改變 ====


改變:FPS提升
# 提升效能以及光影 FPS。


'''第八代UAC'''
=== '''第五代 UAC''' ===
開發於[[107年]]12月,成功開發的重要幫助者:Rumia。該玩家由於有大量的 WorldEdit 使用需求,卻遇上了效能問題,因此特別針對 WorldEdit 最佳化。


開發於2019年2月,成功開發的重要幫助者:夜子
==== 適用對象 ====


適用對象:'''Minecraft玩家、Minecraft伺服器、Ultralight MIDI Player、與任何Java程式'''
# Minecraft 伺服器


優點:優秀的效能
==== 優點 ====


缺點:開啟速度緩慢,資源消耗變多
# 優秀的少量資源消耗
# 最佳化 WorldEdit (神奇小木斧)的效能表現。


改變:提升效能,資源消耗表現變差
==== 缺點 ====


'''第九代UAC'''
# 無法使用在玩家上。


開發於2019年3月,成功開發的重要幫助者:草莓龍
==== 改變 ====


適用對象:'''Minecraft玩家、Minecraft伺服器、Ultralight MIDI Player、與任何Java程式'''
# 提升效能。
# 最佳化 WorldEdit。


優點:優秀資源消耗表現
=== '''第六代 UAC''' ===
開發於[[107年]]12月,將一些圖形細節相關計算給顯卡處理,進而提昇 FPS。


缺點:效能表現變差
==== 適用對象 ====


改變:減少資源消耗,加快開啟速度,效能表現變差
# Minecraft 玩家。
# Ultralight MIDI Player。


'''第十代UAC'''
==== 優點 ====


開發於2019年4月,成功開發重要幫助者:njes9701
# 減少處理器 (CPU) 依賴。
# 強化顯示卡 (GPU) 效能 (FPS) 表現。


適用對象:'''Minecraft玩家、Minecraft伺服器、Ultralight MIDI Player、與任何Java程式'''
==== 缺點 ====


優點:優秀的資源消耗表現,不錯的效能
# 無法使用在伺服器上。


缺點:動態最佳化速度較慢
==== 改變 ====


改變:減少資源消耗,加快開啟速度,提升效能
# FPS 提升


'''第十一代UAC'''
=== '''第七代 UAC''' ===
開發於[[108年]]1月,將更多圖形細節相關的計算給顯卡處理,進而再提昇 FPS。


開發於2019年5月,成功開發的重要幫助者:Kanade
==== 適用對象 ====


適用對象:'''Minecraft玩家、Minecraft伺服器、Ultralight MIDI Player、與任何Java程式'''
# Minecraft 玩家
# Ultralight MIDI Player


優點:優秀的效能
==== 優點 ====


缺點:資源消耗變多
# 最佳化顯示卡 (GPU) 的效能 (FPS) 表現。


改變:提升效能,資源消耗表現變差
==== 缺點 ====


'''第十二代UAC'''
# 無法使用在伺服器上。


開發於2019年6月,成功開發的重要幫助者:狼犬
==== 改變 ====


適用對象:'''Minecraft玩家、Minecraft伺服器、Ultralight MIDI Player、與任何Java程式'''
# FPS 提升。


優點不錯資源消耗表現優秀效能
=== '''第八代 UAC''' ===
開發於[[108年]]2月,成功開發的重要幫助者夜子。本次大刀闊斧的針對編譯器做調整,但由於 Java 本身架構因素也導致了程式變重起來了。這門學問也深奧到日後版本幾乎都跟編譯器調整有關。


缺點:資源消耗表現還是不夠好
==== 適用對象 ====


改變:提升效能,減少資源消耗
# Minecraft 玩家。
# Minecraft 伺服器。
# Ultralight MIDI Player。
# 與任何 Java 程式。


'''第十三代UAC'''
==== 優點 ====


開發於2019年7月,成功開發重要幫助者:ChenBill
# 優秀效能。


適用對象:'''Minecraft伺服器、Ultralight MIDI Player'''
==== 缺點 ====


優點:不錯的資源消耗表現,超優秀的效能
# 開啟速度緩慢。
# 資源消耗變多。


缺點:無法使用在玩家上
==== 改變 ====


改變:提升效能,減少資源消耗
# 提升效能
# 資源消耗表現變差。


'''第十四代UAC'''
=== '''第九代 UAC''' ===
開發於[[108年]]3月,成功開發的重要幫助者:草莓龍。這次針對魔法金屬做調整,試圖改善模組的效能。對於模組來說帶來了強大的效能,但相對於前代來說,用於原版時效能較差。


開發於2020年8月,成功開發的重要幫助者:森博八鉛太
==== 適用對象 ====


適用對象:'''Minecraft玩家、Minecraft伺服器'''
# Minecraft 玩家
# Minecraft 伺服器
# Ultralight MIDI Player。
# 與任何 Java 程式。


優點:很不錯的資源消耗表現,超級優秀的效能
==== 優點 ====


缺點:開啟速度變慢
# 優秀的資源消耗表現。


改變:提升效能,減少資源消耗
==== 缺點 ====
 
# 效能表現變差。
 
==== 改變 ====
 
# 減少資源消耗。
# 加快開啟速度。
# 效能表現變差。
 
=== '''第十代 UAC''' ===
開發於[[108年]]4月,成功開發的重要幫助者[[njes9701]]。由於紅石生存遇上了效能問題,進而開發了這代的架構。鑑於這時候的紅石生存常有蓋錯要回檔的情形,而採取加快啟動的時間來加快這個領域的研究。
 
==== 適用對象 ====
 
# Minecraft 玩家。
# Minecraft 伺服器。
# Ultralight MIDI Player。
# 與任何 Java 程式。
 
==== 優點 ====
 
# 優秀的資源消耗表現。
# 不錯的效能。
 
==== 缺點 ====
 
# 動態最佳化速度較慢。
 
==== 改變 ====
 
# 減少資源消耗。
# 加快開啟速度。
# 提升效能。
 
=== '''第十一代 UAC''' ===
開發於[[108年]]5月,在上一代的基礎下,試圖以增加資源消耗為代價強化效能,來讓 MSPT 降低。
 
==== 適用對象 ====
 
# Minecraft 玩家。
# Minecraft 伺服器。
# Ultralight MIDI Player。
# 與任何 Java 程式。
 
==== 優點 ====
 
# 優秀的效能。
 
==== 缺點 ====
 
# 資源消耗變多。
 
==== 改變 ====
 
# 提升效能。
# 資源消耗表現變差。
 
=== '''第十二代 UAC''' ===
開發於[[108年]]6月,成功開發的重要幫助者:狼犬。本次接獲了跨國百人聯合活動的支援,進而開發。由於需要應對更多玩家,還是跨國的,因此再調整成效能導向形式。
 
==== 適用對象 ====
 
# Minecraft 玩家。
# Minecraft 伺服器。
# Ultralight MIDI Player。
# 與任何 Java 程式。
 
==== 優點 ====
 
# 不錯的資源消耗表現。
# 優秀的效能。
 
==== 缺點 ====
 
# 資源消耗表現還是不夠好。
 
==== 改變 ====
 
# 提升效能。
# 減少資源消耗。
 
=== '''第十三代 UAC''' ===
開發於[[108年]]7月,成功開發的重要幫助者:ChenBill。隨著經驗的累積,持續提昇效能的同時也開始逐漸精簡化資源的使用,讓資源消耗程度回歸前幾代的程度。
 
==== 適用對象 ====
 
# Minecraft 伺服器。
# Ultralight MIDI Player。
 
==== 優點 ====
 
# 不錯的資源消耗表現。
# 超優秀的效能。
 
==== 缺點 ====
 
# 無法使用在玩家上。
 
==== 改變 ====
 
# 提升效能
# 減少資源消耗。
 
=== '''第十四代 UAC''' ===
開發於[[109年]]8月,成功開發的重要幫助者:森博八鉛太。由於活動的多樣性,面對了效能衝擊因此瞬間的壓力衝擊勢不可擋。以減慢開啟的速度為代價,加強運作中的效能。同時也減少了一點資源的消耗,讓更多的資源能運用在真正需要的地方。
 
==== 適用對象 ====
 
# Minecraft 玩家。
# Minecraft 伺服器。
 
==== 優點 ====
 
# 很不錯的資源消耗表現。
# 超級優秀的效能。
 
==== 缺點 ====
 
# 開啟速度變慢。
 
==== 改變 ====
 
# 提升效能。
# 減少資源消耗
 
=== '''第十五代 UAC''' ===
開發於[[111年]]4月,成功開發的重要幫助者:LWCJacky(小捷)。高版本的模組生存已經是不一樣的環境,因此需要針對新版本做調整。採用前一代的基礎做適應調整。
 
==== 適用對象 ====
 
# Minecraft 玩家。
# Minecraft 伺服器。
 
==== 優點 ====
 
# 很不錯的資源消耗表現。
# 超級優秀的效能。
 
==== 缺點 ====
 
# 開啟速度變慢。
 
==== 改變 ====
 
# 支援 Java 17。
# 支援 Minecraft 1.17(+)。
 
=== '''第十六代 UAC''' ===
開發於[[112年]]9月,是為了[[中華麥塊]]跨超大版本的升級而開發的。
 
==== 適用對象 ====
 
# Minecraft 伺服器。
 
==== 優點 ====
 
# 不錯的資源消耗表現。
# 優秀的效能。
 
==== 缺點 ====
 
# CPU 使用率較高。
 
==== 改變 ====
 
# 專注於 Minecraft 1.20。
 
=== '''第十七代 UAC''' ===
開發於[[113年]]6月,成功開發的重要幫助者:ruo1012。由於 Java 21 的更改緣故,因此又需要針對新版本做調整。
 
==== 適用對象 ====
 
# Minecraft 伺服器。
 
==== 優點 ====
 
# 不錯的資源消耗表現。
# 優秀的效能。
 
==== 缺點 ====
 
# CPU 使用率較高。
 
==== 改變 ====
 
# 支援 Java 21。
# 支援 Minecraft 1.21(+)。
 
=== '''第十八代 UAC''' ===
[[檔案:114-02-11 VisualGC.webp|替代文字|縮圖|十八代時的監控畫面。]]
開發於[[114年]]1月,Java 21 + Minecraft 1.21.4 + Folia + 17th UAC 的組合有適應不良的情形,因此需要重新調整來讓使用這個組合時穩定下來。
 
==== 適用對象 ====
 
# Minecraft 伺服器。
 
==== 優點 ====
 
# 不錯的資源消耗表現。
# 不錯的效能。
 
==== 缺點 ====
 
# MSPT 比起前代較高。
 
==== 改變 ====
 
# 降低資源消耗。