FC2カウンター FPGAの部屋 ZYBOのUbuntu14.04 LTSにclangをインストールしてコンパイル

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

ZYBOのUbuntu14.04 LTSにclangをインストールしてコンパイル

ZYBO で動作している Ubuntu14.04 LTSに clang-3.4 をインストールしました。
インストール自体は
sudo apt-get update
sudo apt-get upgrade
sudo apt-get clang

です。これで、clang-3.4 と llvm-3.4 がインストールされました。

この状態で、clang laplacian_filter.c を実行して clang でコンパイルしてみましたが、

error: unable to open output file '/tmp/laplacian_filter-79ee4c.s': 'Error
      opening output file '/tmp/laplacian_filter-79ee4c.s': Permission denied'


が出ました。
良くエラー内容を見ると、clang はどうやら中間ファイルを /tmp に書き込むようです。/tmp のパーミッションを 777 ( sudo chmod 777 /tmp ) にしたところ、clang でコンパイルができるようになりました。(下の図ではなにもしないでコンパイルが成功したように見えますが、別のターミナルから chmod してコンパイルが成功するようになりました)
clang_150710.png

clangのNEONを使用したオートベクタライズについての資料
General Cross-Compilation Options in Clang CPU, FPU, ABI
Auto-Vectorization in LLVM

clang -mcpu=cortex-a9 -mfpu=neon -mfloat-abi=hard -O3 laplacian_filter2.cでベクトル化されてNEON使用命令を出力するので速い。ラプラシアンフィルタのみの処理時間は、84.2 ms 程度。
clang -O3 laplacian_filter2.c でコンパイルすると、ラプラシアンフィルタのみの処理時間は、100 ms 程度。

詳しいデータは後日ブログに書きます。
  1. 2015年07月10日 04:48 |
  2. Linux
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
http://marsee101.blog19.fc2.com/tb.php/3196-0e44f5b0
この記事にトラックバックする(FC2ブログユーザー)