IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.
今週のミス。 二度と繰り返さぬよう、記録に残しておく。 _ アライメント アセンブラで書いたテスト用データ。 .align 4 これを忘れたために、えらい目に…。 _ 浮動小数点レジスタを使い切る VU1 MicroMode プログラミングの話。 複数行列で頂点ブレンディングするコードを書いている時のこと。 何も考えずに、ループ開始前に行列をレジスタに読み出すコードを書いたら、 VCL に「レジスタ使い切った」と怒られる。 31 本しかレジスタ無いのに、 行列まとめて読み出せば不足するが道理。 そもそも VU1 MicroMode では ローカルメモリからデータを読み出す積和演算 は Upper/Lower で同時実行できるから、 焦ってレジスタに置いておく利点はない。 そこで、 ループ中で行列を順に読み出しつつ計算を行うように書き直して対応。 それにしても VU0 MacroMode の
Fail-Safe C は、メモリ安全性を保証する ANSI C 言語のフルスペックの実装です。 ANSI C 言語の仕様で定められた全てのメモリ操作(キャストや共用体を含む)に対し その安全性を保証し、全ての危険なメモリアクセスを事前に検知し防止します。 Fail-Safe C では、コンパイル時や実行時の様々な最適化手法を組み合わせる ことで、実行時検査のオーバーヘッドの削減を行っています。このコンパイラ を用いることでプログラマは、既存のプログラムを大幅に書き換えたり別の言 語に移植したりすることなく、そのままプログラムを安全に実行することがで きます。 詳細については次の文献もごらん下さい。 Yutaka Oiwa. Implementation of the Memory-safe Full ANSI-C Compiler. ACM SIGPLAN Conference on P
C 言語のプリプロセッサはマクロプロセッサであり、C コンパイラが実際のコンパイルの前にプログラムの変換を行うさいに自動的に使用される。マクロプロセッサというのは、マクロを定義できることから来ている。マクロは、ある構文に対する短縮形である。 C プリプロセッサには 4 つの独立した機能があり、目的に応じた使い方ができる。 ヘッダファイルの取り込み。ヘッダファイルは、読者のプログラムの中に置き換え可能な宣言の入ったファイルである。 マクロ展開。マクロを定義することにより、それをC 言語のコードの任意の断片の短縮形とすることができる。C プリプロセッサは、そのマクロがプログラム中に現れたなら、定義と置き換える。 条件付きコンパイル。特別なプリプロセッサ制御子を使うと、色々な条件に合わせてプログラムの一部を取り込んだり、取り除くことができる。 行番号の制御。複数のソースファイルを組み合わせたり、
C、C++、Objective C、Fortranのコンパイル GCCコマンド・オプション オプションの要約 出力の種類を制御するオプション C++プログラムのコンパイル Cの方言を制御するオプション C++の方言を制御するオプション 警告を要求もしくは抑制するオプション ユーザ・プログラムまたはGCCをデバッグするためのオプション 最適化を制御するオプション プリプロセッサを制御するオプション アセンブラへのオプション渡し リンク処理用のオプション ディレクトリ探索のためのオプション ターゲット・マシンとコンパイラ・バージョンの指定 ハードウェアのモデルとコンフィギュレーション M680x0オプション VAXオプション SPARCオプション Convexオプション AMD29Kオプション ARMオプション Thumbオプション MN10200オプション MN10300オプション M32R
GCCを使ってベクトル演算をしましょう --GCCからSIMD(MMX,SSE,SSE2,SSE3)機能を利用する方法 陳 謙 Copyright (c) 2004,2005 CHEN QIAN 目次 1 はじめに 2 ソフトウェアのダウンロードインストール 3 CPUの能力の調査 4 新しいデータ型 5 GCCがサポートするベクトル演算 6 内蔵関数の表記法 7 MMXレジスタのクリア 8 データの移動 8.1 ポインタ(メモリ)から変数へ 8.2 変数からポインタ(メモリ)へ 8.3 変数から変数へ 10 マスクによる移動 11 16ビットデータの取り出し 12 16ビットデータの挿入 13 データの組み換え 14 データの変換 14.1 ゼロベクトル 14.2 整数と整数ベクトル同士の変換 14.3 浮動小数点数と浮動小数点ベクトル同士の変換 14.4 整数と浮動小数点数同士の変換
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く