gcc 4.3 以降では以下のように -mcpu=cell を使用することができる。
CFLAGS="-O2 -pipe -mcpu=cell -mabi=altivec"
gcc 4.3 は正式版がまだリリースされていないので、以下の開発版を用いる。
gcc version 4.3.0 20080111 (experimental) (GCC)
gcc 4.1.2 と 4.3 を比較してみよう。
1: gcc 4.1.2
gcc バージョン 4.1.2 20070925 (Red Hat 4.1.2-33)
CFLAGS="-O2 -funroll-all-loops -m64 -mcpu=G5 -mabi=altivec"
2: gcc 4.3
gcc version 4.3.0 20080111 (experimental) (GCC)
CFLAGS="-O2 -funroll-all-loops -m64 -mcpu=cell -mabi=altivec"
ソフトウェア SDPA 7.0.5 rev3 + LAPACK(BLAS) 3.1.1
○問題 mcp500-1
1: 1m31.231s
2: 1m31.726s
○問題 theta3
1: 0m55.756s
2: 0m58.067s
○問題 r2S_broydenTri600
1: 0m15.588s
2: 0m15.585s
というわけで、特に効果は認められない。
CFLAGS="-O2 -pipe -mcpu=cell -mabi=altivec"
gcc 4.3 は正式版がまだリリースされていないので、以下の開発版を用いる。
gcc version 4.3.0 20080111 (experimental) (GCC)
gcc 4.1.2 と 4.3 を比較してみよう。
1: gcc 4.1.2
gcc バージョン 4.1.2 20070925 (Red Hat 4.1.2-33)
CFLAGS="-O2 -funroll-all-loops -m64 -mcpu=G5 -mabi=altivec"
2: gcc 4.3
gcc version 4.3.0 20080111 (experimental) (GCC)
CFLAGS="-O2 -funroll-all-loops -m64 -mcpu=cell -mabi=altivec"
ソフトウェア SDPA 7.0.5 rev3 + LAPACK(BLAS) 3.1.1
○問題 mcp500-1
1: 1m31.231s
2: 1m31.726s
○問題 theta3
1: 0m55.756s
2: 0m58.067s
○問題 r2S_broydenTri600
1: 0m15.588s
2: 0m15.585s
というわけで、特に効果は認められない。