かなり古いFreescale ARMチップに基づく組み込みLinuxボードを使用しています。PythonインタープリターがハードウェアFPUを使用しているかどうかを確認するにはどうすればよいですか?チップかどうか?
私の/ proc/cpuinfoは:
プロセッサ:ARM926EJ-S rev 5(v5l) BogoMIPS:179.81 機能:swp half thumb fastmult edsp Java CPUインプリメンター:0x41 CPUアーキテクチャ:5TEJ CPUバリアント:0x0 CPUパーツ:0x926 CPUリビジョン:5
ARM ARMv4からARMv7への世界では、浮動小数点サポートが [〜#〜] vfp [〜#〜] と呼ばれ、ハードウェアサポートがFeatures
/proc/cpuinfo
の行、またはカーネルの起動時に出力されるVFP support
ログメッセージ(ARMv8では、これは単に「FP」です)。
Allwinner A20の/proc/cpuinfo
では、次のようになります。
Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm
(さまざまなvfp
機能を参照)およびブートログ:
VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 4
VFPが完全にサポートされていない場合、カーネルは代わりにログに記録します
VFP support v0.3: not present
または
VFP support v0.3: no double precision support
Pythonインタプリタがこれを使用できるかどうかについては、主にARM Linuxディストリビューションのアーキテクチャに依存しているようです。正しく理解できれば、基本的なDebian armel
はFPUを使用せず、Debian armhf
(およびRaspbian armhf
)が使用します;古いDebian arm
バリアントはFPU命令を使用しましたが、これらはarmel
では、FPUをサポートするカーネルまたはCライブラリをインストールできます(そのようなCライブラリは、Debianアーカイブでは使用できないようです)。
試す
awk '$1 == "fpu" { print $3 ; }' /proc/cpuinfo
与える
yes
yes
あなたは洗練することはできません
awk '$1 == "fpu" { print $3 ; exit ;}' /proc/cpuinfo
1つだけを持っています。
単なるgrepが生成される(フラグ行は省略)
fpu : yes
fpu_exception : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtr ...
fpu : yes
fpu_exception : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtr ...
残念ながら、私はテストを行うためのFPUの少ないLinuxを持っていません、おそらくrapsberryの所有者ですか?