看板 Minecraft 關於我們 聯絡資訊
ID/遊戲內ID: N/A 地區:台北 性別:男 暱稱:N/A 喜歡或是擅長遊戲玩法:N/A 所屬伺服器/擁有伺服器:N/A 對本板建議:N/A 想對大家說的話: 啊 大家好 我是kuangjc5566 人在台北 我其實還不算是玩家 就只是載Java版的下來到Linux上跑DEMO模式 然後反組譯看程式是怎麼寫的… Google了一下,發現很多人抱怨地形產生的很慢。 我自己的筆電跑起來地形也是產生的很慢 都是一個一個慢慢長出來的,肉眼就能察覺 所以我今天跑DEMO時就特地開了Java Flight Recorder 嗯 飛行記錄器 簡單來說就是會把Java程式運作時的一些細節記錄下來存成一個檔案, 然後事後可以分析性能瓶頸在哪裡。 我今天錄了檔案,還沒用工具剖析瓶頸。 想看看地形產生能不能改成多核心的寫法 希望能用Fork/Join來改寫,希望啦 大家不要有期待 都只是剛開始而已 而且我今天第一次用飛行紀錄這功能 可能要剖析很久。 我只是很不服氣一直有人把Minecraft跑起來不流暢算到Java頭上,明明Java這個語言一開始設計時就有考慮多核心,可是Minecraft都沒有好好運用。 所以想說來改改看。 最終目的是寫個可以直接替換掉Minecraft程式,相容存檔時的資料的實作。 簡單來說,就是你把你Minecraft存檔時的資料拷貝過去就能直接跑的複製版 我對那個程式覺得…架構不太好 希望能夠改成能好好利用多核心 程式碼也清楚易懂沒有程式碼混淆,大家好寫MOD 可是不要期待,我沒有承諾會達成,這只是假日有時間時的嗜好計畫而已 大概就4醬 其他:N/A -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.160.134.134 ※ 文章網址: https://www.ptt.cc/bbs/Minecraft/M.1514308896.A.9A3.html
LPH66: 要反組譯的話可以找找 Minecraft coder pack (MCP) 12/27 01:24
LPH66: 雖然這是為了模組開發者弄的, 不過它是也確實反組譯出來了 12/27 01:25
LPH66: 然後 Java 版效能不太好其實大家都知道 12/27 01:25
LPH66: 不然就不會有 Optifine 這種東西出現了 12/27 01:25
kuangjc5566: 我就是用MCP反組譯的… 12/27 01:27
CoNsTaR: java 效能就是差啊 有什麼問題嗎? 12/27 02:02
CoNsTaR: cpp 寫的 mc 也只用單線還不是跑得跟飛的一樣 12/27 02:02
nick5487: 格式呢 12/27 07:07
Gwaewluin: 砍掉重練的win10版效能就很好,難道是微軟沒有技術支 12/27 07:35
Gwaewluin: 援mojang嗎 12/27 07:35
NoyVaughty: 好奇直接這樣反組譯不會被Mojang告嗎? 12/27 13:08
alanqq0624: 聽說是卡在一個挺微妙的點 12/27 14:03
alanqq0624: 總之官方就暫時睜一隻眼閉一隻眼的樣子 12/27 14:03
alanqq0624: 不過比較新的版本不是本來就是用其他核去跑其他chunk? 12/27 14:03
haidai: 小子,格式啊你 12/27 17:18
hfs: 推! 12/27 23:18
LPH66: 話說回來, 原 PO 知道 Spigot/Bukkit/... 這些東西嗎? 12/28 00:39
eight0: softpak 板友的文章也許可以參考 12/28 00:58
kuangjc5566: 啊!他有上ptt啊?我今天profile完發現問題在server 12/28 03:28
kuangjc5566: thread,就Google了一下,發現他有錄YouTube影片展示 12/28 03:28
kuangjc5566: 他改寫的server,還有GitHub的patch,很不賴,可以好 12/28 03:28
kuangjc5566: 好利用多核。似乎是有用fork/join framework。但我試 12/28 03:28
kuangjc5566: 著生出spigot,然後想把他寫的patch打上去。可是我sp 12/28 03:28
kuangjc5566: igot的code都找不到自然也無法上hose的patch… 12/28 03:28
kuangjc5566: 至於單個 thread 性能要繼續榨出來,我有個想法,不 12/28 03:44
kuangjc5566: 是用HSA,不是CUDA,是使用CPU的SIMD指令集,也就是A 12/28 03:44
kuangjc5566: VX,AVX2,AVX512那些SIMD指令。但是要程式要向量化 12/28 03:44
kuangjc5566: 。剛好幾個月前OpenJDK的project Panama有個可以體驗 12/28 03:44
kuangjc5566: 之後可能在Java10會擺進去的API,現在要用的話只能在 12/28 03:44
kuangjc5566: Linux上用,還沒移植到 Mac OS X 和 Windows 12/28 03:44
kuangjc5566: 不過現在在Java8 Java9 是可以用 Vector API 的 12/28 03:48
CoNsTaR: 大家覺得這個484來亂的啊 12/28 08:19
g6318ian: 比較像是活在自己的世界吧 12/28 12:45
LPH66: 活在自己的世界+1, 搞這個但對 Spigot/Bukkit 等字眼沒反應 12/28 14:06
LPH66: 表示是自己一頭熱血就想跳下去做 12/28 14:06
LPH66: 我提這個的意思是說他想搞的東西至少是個像那種東西那麼大 12/28 14:07
LPH66: 的一個 project, 單靠這樣一頭熱血不知道做不做得下去... 12/28 14:08
※ 編輯: kuangjc5566 (210.71.24.250), 12/28/2017 16:48:57
shikendon: 樓上沒看到他都已經在嘗試 softpak 的 HOSE 專案了嗎? 12/28 17:00
shikendon: 雖然我也不太看好業餘時間有辦法解決這個歷史大坑, 12/28 17:01
shikendon: 但有人願意跳坑就值得給予鼓勵(咦 12/28 17:02
haidai: 我是覺得勇於挑戰他人所不為還是值得鼓勵啦 12/28 20:14
haidai: 至於難度能不能克服是另一個事情了,成功了表示潛力無限 12/28 20:15
haidai: 不了了之也算是瞭解自己極限,都是好事 12/28 20:15