OpenCore 0.7.7でAlder Lake全コアに対応予定

Intelの新しい第12世代CPU Alder Lake-Sへの対応がOpenCore開発チームによって進捗しています。先の記事では、macOSでAlder Lake-SのEコアを半分まで稼働させる拡張機能であるCpuTopologySync.kextを紹介しました。昨日これが配布終了になり、その機能がOpenCore本体に組み込まれつつあることが明らかになりました。来月公開のOpenCore 0.7.7では全てのEコアが稼働するそうです。

その機能を先立って試すことも可能です。以下のコメント、

で、開発段階のOpenCore.efiが配布されています。これを、

  1. 現在のEFI/OC/OpenCore.efiと入れ替えて、
  2. config.plistでKernel/Quirks/ProvideCurrentCpuInfoをtrueにする

ことで、macOSから全コアが利用可能になります。当然ですがBIOSで全コアを有効に設定してく必要があります。上記のコメントの手順では、CPUFriend.kextとCPUFriendDataProvider.kextを使用して、CPUの周波数ベクターを設定するように書かれていますが、iMacPro1,1の機種IDでは不要でした。書き換えなくても性能は変わりませんでした。

これでGeekBench 5のマルチコアスコアが1000から2000くらい上昇します。明らかなシングルコア性能低下もありませんでした。GeekBenchのCPU情報によると、例えば12700Kは、

1 Processor 20 Cores

と表示されます。8 Pコア+8 ハイパースレッド (HT) +4 Eコア=20コアという計算だと思われます。 10900Kの場合は、

1 Processor 10 Cores, 20 Threads

のように、物理コアとスレッドが別々に表示されていました。OpenCoreでは、Alder Lake PコアのHTを物理コアとして扱うことで、HT可否コア混在の問題を解決している様子です。

来月のOpenCore 0.7.7へのバージョンアップにより、何事もなく全コアが使えるようになると思いますが、現時点でも簡単に試せて、効果絶大です。

10件のコメント

  1. >OpenCore 0.7.7になれば何事もなく全コアが使えるようになると思いますが、現時点でも簡単に試せて、効果絶大です。

     OpenCoreチームの粘り、凄いですね。これって、もっと期待しても良いのでしょうか?

     Alder LakeがHacintoshno世界でようやく普及し始めたのに、ちょっと先(同じZ690ボードでサポート予定の次世代CPU:Raptor Lake)のことを考えてしまいます。

    つい先月、4コアから念願の10コアCPUにアップグレードいたばかりなのに !!
    ー ”もしかして我が家の自作PCで、24コアCPUを使える様になる” ?

    *参考: 24-core/32-threadの“Raptor Lake”が姿を現す
    https://northwood.blog.fc2.com/blog-entry-11172.html

  2.  とわいえSoC前の10thーgenのi9は、一気にVirtual Machineを3つも起動できるので、やっぱりスレッド数が多いのはべんりなんですよねぇ。Moebuntuの方の開発があるし^^;
     i9安くなってほしいなぁ;;

  3. お疲れさまです。きになるのは・・・
     Eコアをどのように使ってるんでしょうねぇ。同じようにAMDでもトポロジー問題っていって、パッチをかけてましたが、それ自体は、どうやら内部に組み込まれちゃったようですね。(OpenCoreもCloverも)
     12thだとPコアは8機でスレッド対応してもPコア分はPコア分16スレッドですから、VirtualMachineでは4スレッド4GBくらいが今流なので、できれば13thでPコア分で10個でPコア分20スレッドに期待したいですねぇ。
     VirtualMachineではきっと、Eコア効率的に使うことはなかなかないでしょうからねぇ。
     VMでの取り扱いってどうするんたろなぁ。いずれVM上のOSのタスクスケジューラによってしまうんでしょうけどねぇ。

  4. 記事に追記しましたが、PコアもEコアもHTも全部物理コアに見せかける実装のようです。

    また、CpuTopologySync.kextの時は、VMが動かない問題があったらしいけど、OpenCoreへ組み込んだバージョンでは解決しているそうです。

    1. ありがとうございます。
       Pコアの8x2の方はいいけど、あとのEコアの4って、どういうプロセススケジュールしてるんでしょねぇ。
       そういう意味で、ベンチが下がらないのは、なにかしてるようにも思います。os依存の方法なら、多少今後OpenCore側のアップデートとの追いかけっこで厄介になるかもですね。
       すいません、あと知りたいのは、マシンタイプはMacPro7,1なんでしょうか?今後の参考になります。

  5. SystemProductNameは以前の製作記事の時のままiMacPro1,1にしてあります。

    https://bootmacos.com/archives/13940

    MacPro7,1でも動くのですが、iMacPro1,1の方がAlder Lakeの周波数設定と相性が良いらしくて性能が出ます。MacPro7,1にする場合は、CpuFriend.kext, CPUFriendDataProvider.kextを使って周波数設定を調整すると、iMacPro1,1と同等の性能に上げられるらしいです。iMacPro1,1の場合はそれが不要なので、シンプルな方が良いと思いiMacPro1,1に設定しています。

    MacPro7,1にする利点は、より新しい製品なので、より長くサポートされるかもしれないという程度のようです。

    1. ありがとうございます。
       MaLd0nさんのEFIみると、MacPro7,1多いんですよね。やっぱり広範なマザーで動かそうとすると、MacProは安定の選択なんでしょうねぇ。

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です