クソ暑い気温と私自身(リアルの方)もある程度落ち着いたので、夏にrealme GT6(真我GT6)購入後にやるつもりだった「Extreme GT」を簡単な記事にします。
Extreme GT
ざっくりOPPO系列(OnePlus/realme)の端末に導入すると、温度制御とそれに伴うフレームロックの制限を解除する(らしい)Magiskモジュール。
(温度上限を大体バッテリー温度48℃前後まで許容、フレームレート制限解除、その他電力やクロックの変更等)
ぶっちゃけ良く分からなかったので、モジュールのZipを解凍して書かれているコードの内容とかをGemini Proに突っ込みました。Extreme GTでは次のようなことをしてるらしいです。(バッテリー温度に関しては私とららりら兄弟の体感とか、軽く調べた内容含む)
このコードはMagisk モジュールの一部であり、OPPO、Realme、OnePlus デバイスのパフォーマンスを向上させる…特に熱制限の解除とフレームレートロックの解除を目的としています。 バージョン3.0.7への変更点として、Scene7アプリからの直接インストールに対応したため、手動でのモジュール適用時の処理が簡略化されています。 具体的な動作は以下のとおりです。
前準備:
- パーミッション設定: モジュールディレクトリ($MODPATH)内のファイルとディレクトリのパーミッションを再帰的に設定します。
- システムプロパティ設定: Wi-Fiモデムの温度制限、環境温度、無線設定、UIレンダラーに関するシステムプロパティを設定します。
- モジュールファイル準備: module.prop と post-fs-data.sh をモジュールディレクトリにコピーします。 disable ファイルが存在する場合は削除します。
- ディレクトリ設定: システムの様々なディレクトリパスを dirs 変数に格納します。
XMLファイルの変更:
コードの大部分は、システムの様々なXML設定ファイルを修正することに費やされています。 これらのファイルは熱管理、パフォーマンス設定、画面リフレッシュレートなどを制御します。 主な変更点は以下のとおりです。
- 熱制限の無効化/緩和 : sys_thermal_control_config*.xml, sys_thermal_config.xml, sys_high_temp_protect*xml, game_thermal_config.xml などのファイルを修正し、温度制限を無効化または緩和します。 これにより、デバイスが高温になってもパフォーマンスが低下しにくくなります。
- フレームレートロックの解除: refresh_rate_config.xml, thermallevel_to_fps.xml を修正し、フレームレートのロックを解除し、より高いフレームレートでのゲームプレイを可能にします。 特にrefresh_rate_config.xmlでは、ゲームごとのリフレッシュレート設定(<item>)を操作し、ロックされている設定(2-2-2-2)を無効化/変更しています。
- パフォーマンス設定の最適化: oppo_display_perf_list.xml, multimedia_display_perf_list.xml, sys_resolution_switch_config.xml を修正し、パフォーマンス設定を最適化します。 不要な処理を削除することでシステム負荷を軽減します。
- QEGA設定: QEGA_Config.txt を修正し、温度と電流のしきい値を設定します。
- バッテリー設定: devices_config.json を修正し、バッテリー関連の設定を変更します。 特に高温時の制限を緩和していると考えられます。
- 充電時の熱設定 (無効化): 充電中の過熱を防ぐための熱設定の変更はコメントアウトされており、デフォルトでは適用されません。
機種依存設定:
- MediaTek Dimensityチップセット (D1100/1200)搭載機種: ro.board.platform プロパティでSoCを確認し、mt6891, mt6893, mt6889 のいずれかの場合、MediaTekチップ用の設定ファイルを適用します。 これらのファイルは $PAGE_WORK_DIR/extreme_gt/d1x00/ からコピーされます。
- service.sh の実行: 機種に最適化された service.sh を実行します。
その他:
- パーティション処理: /system/vendor などがシンボリックリンクの場合、Magiskモジュールの適用方法を調整します。 KSU (KernelSU) が有効な場合に実行されます。
- デバッグ出力: “OK ^_*” を標準エラー出力に出力します。
導入・インストール
ブートローダーアンロック・Magisk導入後のOPPO系端末に、Scene(TOOLBOX-SCENE)をインストール。
rootモードでSceneを起動し、Advance内のAdditionalを選択。
Additional内の「OPPOほにゃらら」を選択し、[Magisk]Extreme GTを有効化して再起動、Magiskのモジュール一覧に項目があればOK。
(基本的にMagisk+Scene+Extreme GTが無難。Scene無しで上のリンクからモジュール単体で導入した場合の動作は未確認)
導入前後のゲーム性能をテスト
Extreme GTの効果確認にはOnePlus 12とrealme GT6でテスト。参考用兼、気温が下がったのでデータ撮り直しついでにD9300のNeo9sもおまけ。
タイトルには夏の検証時にハイエンドとしては散々な結果だった、ゼンレスゾーンゼロとエクスアストリス、ゲーム性能の計測としてポピュラーな原神を選定。3タイトルでExtreme GTをON/OFFにした場合のデータ2つを簡単に比較して確認。
Extreme GT導入前後のゲーム性能テスト | ||
原神・スメールシティ 夜蘭C1ランニングテスト(30分間) | ||
ゼンレスゾーンゼロ・ルミナスクエア 日中でのランニングテスト(20分間) | ||
エクスアストリス・ドラン/貿易地域 ランニングテスト(25分間) | ||
【OnePlus 12(CPH2581)】 SoC:Snapdragon 8 Gen 3 RAM:12GB(LPDDR5X) ROM:256GB(UFS 4.0) 高パフォーマンスモード(OxygenOS) | 【realme GT6(RMX3800)】 SoC:Snapdragon 8 Gen 3 RAM:12GB(LPDDR5X) ROM:256GB(UFS 4.0) 強制ブレイズモード(realme UI) | 【iQOO Neo9S Pro(参考用)】 SoC:Dimensity 9300+ RAM:12GB(LPDDR5X) ROM:256GB(UFS 4.0) モンスターモード(OriginOS) |
原神
最も効果的だった原神・realme GT6から簡単に比較。ブレイズモードのrealme GT6ではExtreme GTがOFFの場合、バッテリー温度20℃辺りから計測を開始して10分弱で40℃程度に到達し、Realme UIが(お節介な)加熱保護で性能を抑制するので、30℃台スタートな夏の計測より性能が悪化。
性能(フレームレート)を抑えつけられるので温度上昇も大人しくなるものの、別に溜まった熱が無くなるわけじゃないので抑制された性能のわりにバッテリー温度は対して低くなっておらず、性能を発揮するブレイズモードと温度を抑制したいColorOSで空回りみたいな状態になってます。
Extreme GT有効時はブレイズモードとColorOSでの空回りがほぼ無くなって、逆に余計なパワーとか無駄が減ったのか温度上昇はむしろ緩やかに。
miHoYoゲー”を”大好きなOnePlusだとコラボ相手で最適化しまくってるので、ホワイトリスト入りのゲームタイトルだろうと容赦なく保守的な性能になりがちのrealmeと違って、長時間プレイ時でも性能抑制されにくくなる以外は却って温度と消費電力が上がるだけなので微妙。
参考用のiQOO Neo9S Pro(Dimensity 9300+)含めて並べた、いつものグラフは以下。消費電力とフレームレート的にはD9300+が相変わらず強いです。
ゼンレスゾーンゼロ
夏の計測だとmiHoYo側の最適化も甘く、ホワイトリスト外なのもあって微妙だったゼンゼロはSnapdragon 8 Gen 3としてマトモな性能を、通常時も発揮できるように改善(したっぽいです)。
Extreme GT ON/OFFでそこまで差は無いものの、原神のようにrealme GT6(ブレイズモード)とColorOSでの性能の空回りによる大きなフレームレートのドロップ(ビッグジャンクやジャンク)が少なくなっており、最低フレームレートも改善して安定性がマシになってます。
OnePlus 12でも同様の傾向で、フレームレートのドロップ頻度の低下とCPU側が積極的に働いたことによる消費電力増が主。メモリ・CPUボトルネックの影響が大きいかわりに性能を発揮さえできれば60fpsを狙いやすいゼンゼロは、Extreme GT状態のOnePlus 12で平均60fpsに到達。
miHoYoゲーへの大好き度合い(最適化)の差なのか、ほぼ同条件でもrealme GT6はOnePlus 12に追い付くことは叶わず、性能梦想はまだ寝起きといった感じでしょうか。
エクスアストリス
ホワイトリスト外(AsoulOptのリストにも無い)、中華スマホで最適化されやすいmiHoYoゲー以外でニッチかつ重量級な部類のエクスアストリスだと、Extreme GTはほぼ効果がなく、消費電力的にはrealme GT6の保守的な調整に引っかかってる気がします。
効果の大きかった原神、微増のゼンゼロは(多分)リスト内のため、性能抑制に引っかかりやすいrealme GT6でもExtreme GTで温度制御とか性能の空回りといった、見えない天井っぽいものを取っ払ってあげれば伸びる場合もありましたが…そもそもリスト外でニッチなタイトルには微妙っぽいです。
OnePlus 12だと一応はExtreme GT有効時の方が消費電力が増加した分、全体的に改善傾向で最低フレームレートがそれなりに伸びてます。
realme GT6はダメダメですが、OnePlus 12だと平均60fps一歩手前かつD9300+以上の安定性に改善。消費電力以外は8 Elite並の動作です。
エクスアストリス(貿易地域)もどっちかと言えば、重要性はCPU性能寄りですが…Adreno 750(903MHz)でGPU使用率5~60%行くのでGPU負荷的にもやっぱりスタレ(黄金の刻)クラスで、保守的云々抜きに(8 Gen 3を活かしきれない)realme GT6じゃ太刀打ちできないのも分かるような…。
あとがき
ホワイトリスト内のゲームタイトルをメインにプレイしてて、realmeやOnePlus端末の強めな温度制御に引っかかって思ったよりもパフォーマンスが出ない(抑制される)なら、Extreme GTを追加して温度制御による性能の空回りの改善とか一定の効果がある…といった感じです。
リスト外のゲームだとExtreme GTよりも、発熱やら消費電力を抑えたいColorOSとかの制御が上に来るので効果が微妙だったり、両方の影響を受けてフレームレートがガッタガタになる場合もあるので、保守的な調整の強い端末(例:realme GT6とかNeo6 SE)にはExtreme GTだけでは足りないです。
(デバッグ済みであれば)メイン・ニッチなゲームに適した、Androidゲーム向けのスレッド調整モジュールの「AsoulOpt」を追加して、CPU側の使用率やブレ幅を抑えたり、個人的に最終手段だと思っているScene(FAS)とかと併用して、Extreme GTは40℃以上も許容してくれるおまじない…と思っておくのが無難です。
【余談・お知らせ】OnePlus 12の電力性能曲線(旧:電力効率曲線)を測定し直したり、SNLを測定したり…。
中華圏で噂されている、8 Eliteの個体差問題をららりら兄弟と軽く探ったりと、色々あるので8 Eliteレビューは少し遅れます。
コメント
realmeはHWが良くてもやはり性能出スノは難しいのですね
8 Eliteの個体差問題があることを初めて知りました
レビュー期待しています
realmeは端末次第ですね。ホワイトリスト内のゲームであれば、今回みたいにExtreme GTで改善できる場合もありますケド…。
どうやらSnapdragon 8 Eliteは、個体ごとに電力性能曲線の形が異なるらしいです。
性能が出ないとかそっち方面で問題があるわけじゃないんですが、メーカー関係なく例えばOnePlus 13同士でも歪な曲線と、綺麗な曲線の個体差が生じるらしく。
レビュー解禁後、socpk.comでしばらく8 Eliteの電力性能曲線が出なかったんですが、フェイサンの切り抜き曰く個体差の影響でグラフ化が困難だったそうで。(888のときに近いらしい)