看板 MobileComm
為什麼Android都能用Termux直接跑Cyberpunk 2077了(詳見極客灣的影片),iOS還只能 玩串流呢? Fine, I'll do it myself. 經過幾天的嘗試,結果我只得到...美少女遊戲。 https://i.imgur.com/MyCdnQE.jpg
首先要從JIT開始說起。 最近有個叫做SideJITServer專案釋出,它讓非Mac電腦的用戶也能夠給iOS啟用JIT。 「JIT」是越獄以外提昇UTM虛擬機性能的唯一手段(新型iPad幾乎不可能安裝TrollStore 或者搞checkra1n越獄) 如果沒有JIT,UTM就會變成UTM SE那樣一條蟲,除了DOS以外什麼系統都跑不了。 但是JIT也有侷限性,它只支援側載版的UTM IPA,並連著電腦啟動,且UTM APP一關閉就會 消失。 啊啊,SideJITServer要連著電腦啟動好麻煩,所以拿出了樹莓派,裝好SideJITServer 套件後,它就變成了隨時能給iPad啟動JIT的觸媒。 只要Type-C一插上去,嘩~馬上湧出魔力供給。 https://i.imgur.com/RR3KzfA.jpg
有了JIT,跑不那麼吃重的作業系統就夠了。 然後,無意間發現了UTM的Linux虛擬機支援GPU加速。背後是透過virtio-gpu半虛擬化GPU 實現的,可用Metal或OpenGL作為後端。無論虛擬機是x86還是ARM架構都能吃到OpenGL 加速。 https://i.imgur.com/5MM8ooU.jpg
這有什麼用呢?唉?有GPU加速不就代表可以玩遊戲了嗎? 我曾經試過UTM跑Windows虛擬機,可是最多最多就到Windows 7了,Tiny 11 (Windows 11 精簡版) 在JIT加持下能3分鐘內開機,但那又怎麼樣呢?進入桌面後依然卡爆。 https://i.imgur.com/CgcILZh.jpg
(說是這麼說,但我覺得Windows 7虛擬機還是有點用的,開機30秒,能跑Office 2010。 感興趣的請看這裡了解安裝方式:https://reurl.cc/GpYKzAhttps://i.imgur.com/5HZUB6Y.jpg
於是我改用類似Android Termux的作法,就是配個Linux環境,再透過Wine玩Steam遊戲。 但是,iOS沒有Termux這種神器,就只能用UTM跑了。 好消息是,Apple M系列晶片撐得住x86_64架構的Debian虛擬機,所以我不用裝arm64架構 Debian虛擬機來虐自己,Box64轉譯實在太不穩啦!只要起個跟一般電腦無異的Debian虛 擬機,就能直接安裝x86版本的Steam客戶端了,它能夠吃到GPU加速。 Debian安裝Steam的方法:https://wiki.debian.org/Steam Steam客戶端如果崩潰,停用GPU加速通常就能解決。 然後就下載遊戲吧...考慮到虛擬機的性能,即使有GPU加速也只能玩Galgame。 https://i.imgur.com/kZQRyG4.jpg
為什麼呢?GPU加速起來了,剩下的問題就是CPU了。要知道JIT的速度依然比不上越獄提 供的Hypervisor,因此拖累了整體性能。 不嚴謹的對比:我之前做了有JIT和沒JIT的測試,並執行Unixbench測試虛擬機的CPU性能 ,結果是有JIT相比無JIT的情況下性能提昇了8倍。但就算是這樣,Apple M2在虛擬機跑 出來的分數竟然只有Qualcomm SD210水準。由此可知沒有Hypervisor,虛擬機的性能損耗 依然嚴重。 https://i.imgur.com/EJdwMzX.jpg
所以才會看到,光一個簡單的小遊戲就佔滿全部CPU了。 https://i.imgur.com/y59HbJy.jpg
https://i.imgur.com/4pyskAf.jpg
唯一欣慰的就是Linux虛擬機沒有那麼吃資源,iPad不會跑到燒起來。 目標達成了一半:Steam開起來了,可是遊戲沒有效能可言。 順帶一提,跑Steam遊戲的副產品,就是Proton / Wine了。在這裡可用比Windows虛擬機開 銷還小的方式,跑Windows軟體。 https://i.imgur.com/vYxVNXo.jpg
-- 原創梗圖系列 https://i.imgur.com/Y10Cw4n.jpg https://i.imgur.com/FqRAWTs.jpg
https://i.imgur.com/Y1pYVqm.png https://i.imgur.com/UKvi40X.png
https://i.imgur.com/55uARuQ.jpg https://i.imgur.com/QGYgykj.jpg
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.77.53.90 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/MobileComm/M.1728564787.A.D05.html
k9120303 : 超喜歡這種折騰又Geek的分享XD 10/10 21:00
aq981334 : 我原先IPad Pro 也像這樣折騰 徹底發揮M系列SOC性 10/10 21:26
aq981334 : 能,但問題太多,所以買了Windows平板來取代惹 10/10 21:26
羨慕有真正虛擬化的
abelyi100 : 太神啦,竟然帶著樹莓派處理這個XDDD 10/10 21:34
abelyi100 : 不過好奇,iPad本身電供行嗎, 10/10 21:36
Chricey : 關節痛有人有有效的復健方法嗎? 10/10 23:51
abelyi100 : 有沒有可能直接靠它撐住樹莓派,形成永動機(x) 10/10 21:36
Type-C可以給樹莓派供電,但這樣樹莓派就沒辦法與iPad通訊了
ssshleo : Monica 10/10 21:44
A4P8T6X9 : 推 10/10 22:13
ariadne : 推 10/10 22:26
Chricey : 關節痛這種東西,比鬼還可怕! 10/11 00:02
paul40807 : 這邊還有這種技術咖 讚喔 10/10 22:50
waroz : 推硬核 10/10 22:51
Two4 : 推~ 10/10 22:54
xru03 : 推 10/10 23:05
Kroner : 5樓關節跟X一樣 10/11 08:09
awen369 : 推實驗精神 10/10 23:20
max8568 : 推 10/10 23:28
b1ues0l28 : 推 10/10 23:49
jeff85898 : http://i.imgur.com/unjmdIq.jpg 10/10 23:51
Kroner : 關節痛睡覺就能治了,吃什麼UC2 10/11 14:32
jeff85898 : 根據AOSP的code Android 16會有免root且支援gpu加速 10/10 23:51
jeff85898 : 的vm可以用 10/10 23:51
jeff85898 : 希望能讓蘋果開放Hypervisor… 10/10 23:51
Android很讓人期待,希望能像Chromebook的crosvm一樣簡單,以後平板就靠這當賣點了 ※ 編輯: ivon852 (42.77.53.90 臺灣), 10/11/2024 00:02:12
jeff85898 : http://i.imgur.com/6yRv9kF.jpg 10/11 00:02
Chricey : 樓下關節痛都吃鞏固力 10/12 08:51
jeff85898 : 對啊 commit是說在開發者模式直接有選項可以開 10/11 00:05
jeff85898 : 希望廠商不會亂閹割不然可能只有Pixel可用 10/11 00:05
感覺高通問題也很大,他們的虛擬化目前只有Windows Hyper-V能用
z1357961 : 推技術文 10/11 05:59
utn875 : 純推 10/11 08:09
Chricey : 哈囉!關節痛真的超痛欸,我之前也遇過類似情況,後來去看醫生吃推薦UC2,效果不錯喔! 10/11 08:09
GJME : 推一個,超喜歡這種沒啥實用價值的折騰文,搞機器 10/11 11:29
GJME : 也搞自己,非常真誠的Geek精神 XDDD 10/11 11:29
manbow77 : ARM簡單架構去模擬複雜的x86就算純轉譯效率也很糟 10/11 14:17
Wangsl : ios給你hypervisor 你們就全部去裝win或linux 10/11 14:32
Kroner : UC2是天然成分嗎?還是有添加物啊? 10/11 14:32
Wangsl : 跑桌面級軟體了這樣app store還怎麼賺錢XD 10/11 14:33
朕不給你不能要
cradredtade : 換m4說不定比較順 10/11 20:51
這倒未必,效能雖然更強但沒有Hypervisor還是全部損失掉
dixsion : 推 10/11 21:51
qoopichu : 問一下為什麼Steam不跑Linux原生版的? 10/12 08:51
Chricey : 有人知道如何處理關節痛嗎?求分享! 10/12 08:51
我是跑原生版x86_64的Steam客戶端沒錯啊,用deb檔安裝的。問題還是CPU太慢。 ※ 編輯: ivon852 (114.27.88.14 臺灣), 10/12/2024 21:24:48
qoopichu : 啊,我理解錯內文了,那怎麼不跑Linux原生的遊戲? 10/13 01:56