CnD

ソフトウェアのスクリーンショット:
CnD
ソフトウェアの詳細:
バージョン: 2012.1
日付のアップロード: 14 Apr 15
開発者: Andreas Kloeckner
ライセンス: 無料
人気: 75

Rating: nan/5 (Total Votes: 0)

CNDは、より快適なCにおけるn次元アレイを用いて行うPythonソース - ソーストランスレータです それは、このコードを向けるだろう。:
空洞SGEMM(フロート* aを、フロート* Bが、フロート* cを、int型のn)
{
とをタップ、寸法「フォートラン」[nは、n]は、
とをタップ、寸法「フォートラン」B [nは、n]は、
とをタップ、寸法c [nは、n]は、
&NBSP;のために(;私は= N <;私= 1がint ++ I)
&NBSP;用(int型J = 1; J <= N; ++ J)
&NBSP; {
&NBSP;フロートTMP = 0;
&NBSP;用(int型のk = 1; K <= N; ++ K)
&NBSP; TMP + = [I、K] * B [K、J];
とをタップし; c [iの-1、jの-1] = tmpなど;
&NBSP;}
}
この中に:
空洞SGEMM(フロート* aを、フロート* Bが、フロート* cを、int型のn)
{
&NBSP;のために(;私は= N <;私= 1がint ++ I)
&NBSP;用(int型J = 1; J <= N; ++ J)
&NBSP; {
&NBSP;フロートTMP = 0;
&NBSP;用(int型のk = 1; K <= N; ++ K)
&NBSP; TMP + = [((K - 1)*((N - 1)+ 1))+(I - 1)] * B型[((J - 1)*((N - 1)+ 1) )+(K - 1)];
&NBSPに、C [((I - 1)* N)+(J - 1)]は、TMPを=;
&NBSP;}
}
また、いくつかの余分な添えものを示しているより包括的な例を見てとることができる。
次元宣言の唯一の効果は、アレイ(IDX)添字演算子の解釈を変更することです。寸法宣言は、通常のCのスコープ規則に従う。
私はまた、CNDは、堅牢、パーサベースの翻訳者ではなく、フレーク状のテキスト置換ツールであることに注意したいと思います。これは、C99、プラス多くのGNU拡張のすべてを理解しています。
寸法宣言内の各軸仕様の形式は次のとおりです。
開始:終了:ストライド:leading_dimensionを
スタートを省略してもよい。エンド歩幅を省略することも可能であるが、それらの後のエントリが指定される場合、その末尾のコロンは、所定の位置に維持する必要があります。例えば、軸仕様:5は単にストライドは、単に指標に乗数として機能し5のストライドを指定します。一切のチェックなし妥当性は、次元宣言で行われません。あなたは足にもお好みの方法で自分自身を撮影することがあります。
レイアウトが全く与えられた「C」またはしないように指定されている場合は、以下のものが該当します。
- 配列は、行優先順にレイアウトされている。
- 指定されている場合は終了インデックスは、排他的であるとみなされる。
- 0の開始インデックスのデフォルト値。
レイアウトは「FORTRAN」として指定されている場合は、以下のものが該当します。
- 配列は列優先順にレイアウトされている。
- が指定されていれば終了インデックスは、包括的であるとみなされる。
- 1の開始インデックスのデフォルト値。
次元宣言に含まれる知識の(ほとんどが)follwing関数でプログラム的に再取得することがあります。
- rankof(A)
- nitemsof(A)
- lboundof(、軸)
- uboundof(、軸)(ユーザー指定の上限を返します)
- puboundof(、軸)(ちょうど軸の最後を超えてインデックスを返します)
- ldimof(、軸)
- strideof(、軸)
それぞれのケースで、軸が整数定数(定数式ではない、通常の整数)でなければなりません。
のインストール/使用方法
あなたは、パッケージインデックスから、またはgithubのからtarballをダウンロードすることでCNDを得ることができる。
&NBSP; gitのクローンgitの://github.com/inducer/cnd.git
&NBSP; CD CND
 Gitのサブモジュールのinit
&NBSP; Gitのサブモジュールのアップデート
CNDを使用するには、PATHに配布-DIR / binを追加します。
開始するには、単に(CNDルート内から)実行します。
&NBSP; CD例
&NBSP; ../ビン/ cndccのgcc -std = C99 basic.c
&NBSP; ./ a.outの
あなたが翻訳プロセスをよりきめ細かく制御したい場合は、CNDコマンドは単にソース·ソースの変換を公開します。 CNDは前処理され、ソースを期待していることに注意してください。あなたはCNDがあるあなたのためのあなたの源でプリプロセッサを実行するオプションを-Eを渡すことができます。実行します。
&NBSP; CND -h
コマンドラインインターフェース上で完全なヘルプを取得する。あなたが使用したいプリプロセッサにCND_CPP環境変数を設定することができます。

の新しいのこのリリースでは何か:から。

  • 構文の変更[I; J] [i、j]がにます。

  • 実際のヘッダの
  • なおよりパーサーサポートします。

の要件

  • のPythonます。

開発者の他のソフトウェア Andreas Kloeckner

PuDB
PuDB

20 Feb 15

PyOpenCL
PyOpenCL

28 Sep 15

へのコメント CnD

コメントが見つかりません
コメントを追加
画像をオンにする!