PowerPCおよびPower 8(およびそれ以上)のCPU機能を判別する方法


12

/proc/cpuinfoIntelおよびARMマシンで調べて、AESやSHAなどのCPU機能を学習できます。AIXとLinuxの両方でPowerPCについても同じことをする必要があります。

Linuxでのテストを以下に示します。出力は、コンパイルファームのGCC112によって生成されます

$ cat /proc/cpuinfo
processor       : 0
cpu             : POWER8E (raw), altivec supported
clock           : 2061.000000MHz
revision        : 2.1 (pvr 004b 0201)
...

processor       : 159
cpu             : POWER8E (raw), altivec supported
clock           : 2061.000000MHz
revision        : 2.1 (pvr 004b 0201)

timebase        : 512000000
platform        : PowerNV
model           : 8247-22L
machine         : PowerNV 8247-22L
firmware        : OPAL v3

GCC112はPower 8マシンです。VMX、AES、SHA、PMULLなどのフラグが表示されるはずです。VMXは、おおよそIntel SSEおよびARM NEONと同等のPowerPCです。

comp.os.linux.powerpcで/ proc / cpuinfoのような関連するディスカッションを見つけました。また、新しいシステムで何をチェックしますか?、しかしそれはCPU機能のような有用な詳細が欠けています。最後に、/ proc / cpuinfoのフラグはどういう意味ですか?に関連する質問があります。ただし、PowerPCについては説明していません。

GCCはビルトインを使用してCプログラムに情報を提供しているようです。たとえば、vsxテストとvcryptoテストがあります。問題は、CプログラムではなくBashスクリプトから作業していることです。

また、AIXで何を使用するかわかりません。AIXは、コンパイルファームのGCC119で入手できます。

AIXおよびLinuxでPowerPC CPU機能を取得するにはどうすればよいですか?

linux  aix  cpu  powerpc 

6
lscpuLinuxとlscfg -vAIX から情報が得られる場合があります。
meuh

@meuhに感謝-喜びはない。PowerPC CPU情報で利用可能な出力。

1
ARMについてはわかりませんが、SSEはx86のオプションの拡張機能ですが、POWERについて述べたすべての機能はすべてのPOWER8チップで必要です
Fox

stackoverflow.com/questions/46144668/…でLinuxのケースを取り上げたと思いますが、これを編集してAIXに固有のものにしますか?
ジェレミー・カー

回答:


3

/ proc / cpuinfoがなぜlscpuフラグ情報を明らかにしないのかわかりません。Linuxカーネルに既知のフラグのリストを見つけましたhttps://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/tree/arch/powerpc/include/asm/ cputable.h?id = refs / tags / v4.9

いくつかのハードウェア機能を示すELF補助ベクトルを検索できることがわかりました。

$ LD_SHOW_AUXV=1 /bin/true
AT_SYSINFO_EHDR: 0x7ffdcd0e6000
AT_HWCAP:        bfebfbff
AT_PAGESZ:       4096
AT_CLKTCK:       100
AT_PHDR:         0x5591e6663040
AT_PHENT:        56
AT_PHNUM:        9
AT_BASE:         0x7f2ae4f79000
AT_FLAGS:        0x0
AT_ENTRY:        0x5591e6664670
AT_UID:          1000
AT_EUID:         1000
AT_GID:          1000
AT_EGID:         1000
AT_SECURE:       0
AT_RANDOM:       0x7ffdcd044399
AT_HWCAP2:       0x0
AT_EXECFN:       /bin/true
AT_PLATFORM:     x86_64

^^ AT_HWCAPにはフラグ情報があります。マスク。このエントリがデコードされたサンプルをインターネットで見ました。残念ながら、ppcハードウェアにアクセスしてテストすることができません。

lscpu AIXで使用できるはずですが、CPUフラグが表示されますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.