Re: bhyve 用の CPU の機能

From: ASOU Masato <masatonasou_at_gmail.com>
Date: Mon, 08 Apr 2024 03:11:25 UTC
4/5(金) 開催の FreeBSD workshop にて佐藤広生さんによりますと、
「POPCNT を実装している CPU は bhyve が必要としている仮想化機能を実装
している可能性が高い。」といった趣旨の回答をいただきました。

要するに、「必要な機能を確認するための確実な方法はなかったが、とりえず
POPCNT が実装されていればおそらく仮想化も実装しているであろう。」と
いうことのようです。
--
ASOU Masato


2024年4月4日(木) 10:49 ASOU Masato <masatonasou@gmail.com>:
>
> とりあえず To: 佐藤さん を追加しました。
> bhyve 使用の可否を grep POPCNT /var/run/dmesg.boot で判断していますが、
> きしもとさんより、以下の指摘をいただいています。
> AMD の場合 POPCNT を確認するのは間違いなのでしょうか?
>
> 2024年4月3日(水) 12:57 KISHIMOTO, Makoto <ksmakoto@dd.iij4u.or.jp>:
> >
> > POPCNTの検出はこちらのツイートによると、AMDではなくIntel EPTの
> > 検出の代用のようですが、大丈夫でしょうか。
> > https://twitter.com/m_bird/status/251628016017502208
> >
> > # POPCNTはワード中の1のビットの数を数える命令で、直接は仮想化とは
> > # 無関係なので……
>
> う〜ん困った。
> https://docs.freebsd.org/en/books/handbook/book/#virtualization-host-bhyve
> に以下の記述があるので、
>
> The easiest way to tell if a processor supports bhyve is to run dmesg
> or look in /var/run/dmesg.boot for the POPCNT processor feature flag
> on the Features2 line for AMD® processors or EPT and UG on the VT-x
> line for Intel® processors.
>
> 上記の文章に従って qiita の記事
> https://qiita.com/masatonasou/items/2fc8bccbf2aea7baebdc#cpu-%E3%81%AE%E6%A9%9F%E8%83%BD
> に
>
>   $ grep 'POPCNT' /var/run/dmesg.boot
>
> と記載しています。
> --
> ASOU Masato
> > > FreeBSD + bhyve に関する記事を先ほど公開しました。
> > > https://qiita.com/masatonasou/items/2fc8bccbf2aea7baebdc
> > > ↑この記事の「CPUの機能」
> > > https://qiita.com/masatonasou/items/2fc8bccbf2aea7baebdc#cpu-%E3%81%AE%E6%A9%9F%E8%83%BD
> > > で EPT, PVI, NPT に関する記述をどうしようかと悩んでいたのですが、とりあ
> > > えず「UEFI の設定で有効にできる場合もあるようです」としておきました。
> >