2

sysctl machdep.cpu.featuresだから私はIntelコアI7プロセッサを搭載したこの真新しいMacBookProを持っています

machdep.cpu.features:FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CLFSH DS ACPI MMX FXSR SSE SSE2 SS HTT TM PBE SSE3 PCLMULQDQ DTES64 MON DSCPL VMX SMX EST TM2 SSSE3 CX16 SSE4.2 xAPIC POPCNT AES PCID XSAVE OSXSAVE TSCTMR AVX1.0 RDRAND F16C

それでも、gcc(4.7.2 macports)を実行すると、#defineが実行されません__AVX__。どうしたの?(Mac OS X 10.8.2)

4

2 に答える 2

2

__AVX__私はあなたが使用しているコンパイラフラグに依存し、__SSEx__定義されます。

g++ -march=corei7avxしたがって、マクロを使用している場合は定義されます。-march=nativegccがCPUを正しく検出できる場合は、これでも十分です(通常はそうです)。

于 2013-01-29T16:46:22.417 に答える
0

10.6.8を実行している私のi7MBP13 "(2010年半ば)では、-mavxが指定されている場合、現在のMacPorts gcc 4.7.3および4.8.2はAVXを定義します。ただし、boost :: simd(wwwから入手可能)を使用してコードをコンパイルするとクラッシュします。 metascale.org)。Macportsclang-3.3にはそのような問題はありませんが、コンパイルに時間がかかります(-mavxなしのgcc> = 4.7と比較して、-mavxありまたはなし)。

于 2013-12-03T08:32:39.393 に答える