「Minecraft伺服器效能測試標準表」:修訂間差異

出自華麥百科
無編輯摘要
無編輯摘要
 
(未顯示由 1 位使用者於中間所作的 1 次修訂)
行 1: 行 1:
 為了分析不 同CPU 對於原 版Minecraft 伺服器 (vanilla server)的效能差距而做出來 的MINECRAFT 伺服器能 測試標準
 為了分析不 同 CPU  對於原 版 Minecraft  伺服器(vanilla server)的效能差距而做出來 的 Minecraft  伺服器 能測試標準 。測試項目偏向於紅石機關對於 CPU 的壓力測試,大致上能分為: CPU 極限 TPS、紅石、漏斗、飛行器、實體擠壓、AI尋路。


 測試項目 偏向于紅石機關對於CPU的壓力測試
== 測試項目 ==


主要測試分為CPU極限TPS、紅石、漏斗、飛行器、實體擠壓、AI尋路。
=== '''極 限 TPS  測試''' ===
 
 主要測 試 CPU  在伺服器空載的情況下能跑到的最 高 TPS  數值,可以體現出 該 CPU  的大致效能。
== 測試條目解釋 ==
 
=== '''極 限TPS 測試''' ===
 主要測 試CPU 在伺服器 空載的情況下能跑到的最 高TPS 數值,可以體現出 該CPU 的大致效能。


=== 紅石測試 ===
=== 紅石測試 ===
 主要測 試CPU 的單核效率。
 主要測 試 CPU  的單核效率。


=== 漏斗測試 ===
=== 漏斗測試 ===
行 20: 行 16:
=== 飛行器測試 ===
=== 飛行器測試 ===
[[檔案:World Eater.png|縮圖|150x150像素|World Eater]]
[[檔案:World Eater.png|縮圖|150x150像素|World Eater]]
 主要測試機器 以World Eater 超大型挖礦機,以大量方塊被活塞推動造成的方塊更新與光照更新下,對伺服器壓力極高的機器做測試。
 主要測試機器 以 World Eater、超大型挖礦機,以大量方塊被活塞推動造成的方塊更新與光照更新下,對伺服器壓力極高的機器做測試。




=== 實體擠壓測試 ===
=== 實體擠壓測試 ===
[[檔案:1k blaze.png|縮圖|150x150像素|一千隻烈焰神]]
[[檔案:1k blaze.png|縮圖|150x150像素|一千隻烈焰神]]
 主要測試大量實體在單一地點互相擠壓,考驗 對CPU 的浮點計算能力。
 主要測試大量實體在單一地點互相擠壓,考驗 對 CPU (FPU) 的浮點計算能力。






=== AI尋路 ===
=== AI 尋路 ===
[[檔案:1k balze AI test.png|縮圖|150x150像素|一千隻烈焰神AI測試]]
[[檔案:1k balze AI test.png|縮圖|150x150像素|一千隻烈焰神AI測試]]
Minecraft的生物尋路所使用的演算法是採用[https://zh.wikipedia.org/zh-tw/A*%E6%90%9C%E5%B0%8B%E6%BC%94%E7%AE%97%E6%B3%95 A-star algorithm],因此可以測試大量生物在遊走時,CPU的多核計算、分支預測、記憶體存取的大致能力。
Minecraft 的生物尋路所使用的演算法是採用 [https://zh.wikipedia.org/zh-tw/A*%E6%90%9C%E5%B0%8B%E6%BC%94%E7%AE%97%E6%B3%95 A-star algorithm],因此可以測試大量生物在遊走時,CPU 的多核計算、分支預測、記憶體存取的大致能力。




行 37: 行 33:


=== 電腦測試環境 ===
=== 電腦測試環境 ===
* <s> 液態氮冷卻 如果有人斗內</s>
* <s>如果有人 斗內 的話,理想是液態氮冷卻器。</s>


=== 安裝 於server端 的監測模組 ===
=== 安裝 於伺服器 的監測模組 ===
* [https://fabricmc.net/ Fabric Loader]
* [https://fabricmc.net/ Fabric Loader]
* [https://www.curseforge.com/minecraft/mc-mods/carpet Carpet Mods]
* [https://www.curseforge.com/minecraft/mc-mods/carpet Carpet Mods]


=== 伺服器設定 ===
=== 伺服器設定 ===
* 視野距 離16
* 視野距 離 16
* 難度和平(實體擠壓測試除外)
* 難度和平(實體擠壓測試除外)
* gamerule doDaylightCycle false
* gamerule doDaylightCycle false
 
=== [[Carpet Mods]] 開啟指令 ===
 
 
=== Carpet Mods 開啟指令 ===
* /log tps,mobcaps,memory
* /log tps,mobcaps,memory
* commandProfile
* commandProfile
行 60: 行 53:
* [https://space.bilibili.com/10125241?spm_id_from=333.337.search-card.all.click World Eater 無溝版 by火弦月]
* [https://space.bilibili.com/10125241?spm_id_from=333.337.search-card.all.click World Eater 無溝版 by火弦月]
* 主世界挖礦機 [https://www.youtube.com/watch?v=itvjgzhgcug Vertical Duper Quarry V2 by Desu Desu]
* 主世界挖礦機 [https://www.youtube.com/watch?v=itvjgzhgcug Vertical Duper Quarry V2 by Desu Desu]
* 10000個漏斗
* 10000 個漏斗
* 1000隻烈焰神實體擠壓
* 1000 隻烈焰神實體擠壓
* 1000隻烈焰 神AI 巡路
* 1000 隻烈焰 神 AI  巡路


== 紀錄方式 ==
== 紀錄方式 ==
主要紀錄方式以/Profile方式連續5次紀錄Average tick time 也就是mspt。
測試項目World Eater會以整台機器啟動後過10秒鐘,以/Profile方式紀錄。
測試項目 Vertical Duper Quarry會分成兩階段紀錄,第一階段將方塊拉出階段後10秒開始紀錄,第二階段TNT開始爆炸後10秒開始紀錄,以/Profile方式紀錄。
測試項目漏斗測試,測試上鎖與解鎖狀態平均mspt。
測試項目1000隻烈焰神實體擠壓,會將gamerule maxEntityCramming 設置成0,避免擠壓死亡,且將烈焰神限制在1*2格的玻璃罩中,以/Profile方式紀錄。


 測試項 目1000 隻烈焰 神AI 尋路,將烈焰神限制 在2*2區塊中且使用打開的地板門作為牆面阻隔,且在牆外格 多1 區塊提供給烈焰神尋路,以/Profile方式紀錄。
# 主要紀錄方式以 /Profile 方式連續 5 次紀錄 Average tick time 也就是 mspt。
# 測試項 目 World Eater 會以整台機器啟動後過 10 秒鐘,以 /Profile 方式紀錄。
# 測試項目 Vertical Duper Quarry 會分成兩階段紀錄,第一階段將方塊拉出階段後 10 秒開始紀錄,第二階段 TNT 開始爆炸後 10 秒開始紀錄,以 /Profile 方式紀錄。
# 測試項目漏斗測試,測試上鎖與解鎖狀態平均 mspt。
# 測試項目 1000 隻烈焰神實體擠壓,會將 gamerule maxEntityCramming 設定成 0,避免擠壓死亡,且將烈焰神限制在 1 * 2 格的玻璃罩中,以 /Profile 方式紀錄。
# 測試項目 1000  隻烈焰 神 AI  尋路,將烈焰神限制 在 2 * 2 區塊中且使用打開的地板門作為牆面阻隔,且在牆外格 多 1  區塊提供給烈焰神尋路,以 /Profile 方式紀錄。

於 2024年8月31日 (六) 17:01 的最新修訂

為了分析不同 CPU 對於原版 Minecraft 伺服器(vanilla server)的效能差距而做出來的 Minecraft 伺服器效能測試標準。測試項目偏向於紅石機關對於 CPU 的壓力測試,大致上能分為: CPU 極限 TPS、紅石、漏斗、飛行器、實體擠壓、AI尋路。

測試項目[編輯 | 編輯原始碼]

極限 TPS 測試[編輯 | 編輯原始碼]

主要測試 CPU 在伺服器空載的情況下能跑到的最高 TPS 數值,可以體現出該 CPU 的大致效能。

紅石測試[編輯 | 編輯原始碼]

主要測試 CPU 的單核效率。

漏斗測試[編輯 | 編輯原始碼]

一萬個未上鎖漏斗

主要測試在一萬個漏斗在不上鎖的情況下對伺服器的壓力測試。


飛行器測試[編輯 | 編輯原始碼]

World Eater

主要測試機器以 World Eater、超大型挖礦機,以大量方塊被活塞推動造成的方塊更新與光照更新下,對伺服器壓力極高的機器做測試。


實體擠壓測試[編輯 | 編輯原始碼]

一千隻烈焰神

主要測試大量實體在單一地點互相擠壓,考驗對 CPU (FPU)的浮點計算能力。


AI 尋路[編輯 | 編輯原始碼]

一千隻烈焰神AI測試

Minecraft 的生物尋路所使用的演算法是採用 A-star algorithm,因此可以測試大量生物在遊走時,CPU 的多核計算、分支預測、記憶體存取的大致能力。


測試環境[編輯 | 編輯原始碼]

電腦測試環境[編輯 | 編輯原始碼]

  • 如果有人能斗內的話,理想是液態氮冷卻器。

安裝於伺服器的監測模組[編輯 | 編輯原始碼]

伺服器設定[編輯 | 編輯原始碼]

  • 視野距離 16
  • 難度和平(實體擠壓測試除外)
  • gamerule doDaylightCycle false

Carpet Mods 開啟指令[編輯 | 編輯原始碼]

  • /log tps,mobcaps,memory
  • commandProfile
  • commandPlayer
  • commandProfile

測試地圖與機器[編輯 | 編輯原始碼]

紀錄方式[編輯 | 編輯原始碼]

  1. 主要紀錄方式以 /Profile 方式連續 5 次紀錄 Average tick time 也就是 mspt。
  2. 測試項目 World Eater 會以整台機器啟動後過 10 秒鐘,以 /Profile 方式紀錄。
  3. 測試項目 Vertical Duper Quarry 會分成兩階段紀錄,第一階段將方塊拉出階段後 10 秒開始紀錄,第二階段 TNT 開始爆炸後 10 秒開始紀錄,以 /Profile 方式紀錄。
  4. 測試項目漏斗測試,測試上鎖與解鎖狀態平均 mspt。
  5. 測試項目 1000 隻烈焰神實體擠壓,會將 gamerule maxEntityCramming 設定成 0,避免擠壓死亡,且將烈焰神限制在 1 * 2 格的玻璃罩中,以 /Profile 方式紀錄。
  6. 測試項目 1000 隻烈焰神 AI 尋路,將烈焰神限制在 2 * 2 區塊中且使用打開的地板門作為牆面阻隔,且在牆外格多 1 區塊提供給烈焰神尋路,以 /Profile 方式紀錄。