問題タブ [vectorization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1393 参照

optimization - マトリックスの複数のサブマトリックスへの同時割り当て。ベクトル化されたインデックスによる可能な最適化

要素を行列の部分行列に割り当てる for ループをベクトル化する賢い方法はありますか?
最初は、2 つの for ループがありました。

次に、内側のループをベクトル化して、コードが読み取れるようにしました。

これにより CPU 時間が 90% 以上短縮されたので、外側のループでも同じことができるかどうか疑問に思いましたが、U マトリックス内の (6x1) マトリックスに割り当てるため、少し難しいようです。私は試した

i:i+5 は必要な最初の 6 つのインデックスしか取得しないためです。

また、 reshape() 関数を使用して行列をベクトルに変換しようとしましたが、要素の複数のブロックを一度に割り当てるのはまだ難しいようです。コードにはそのような for ループが全部で 3 つあるので、代替の最適化は何らかの形でそれらを並列化することだと思います。ただし、並列ツールボックスにアクセスできない場合は、可能であればベクトル化が適切なソリューションのように思えます。

このコードは、グリッド上の 6 つの連立方程式を解くための数値有限差分法のサブルーチンの一部であるため、この質問は、連立方程式、特に微分方程式で行列計算を行うすべての人に関連する可能性があります。コードを最適化するための提案をいただければ幸いです。

0 投票する
2 に答える
61697 参照

math - 2点の方向

高校の数学の概念が忘れられているので、ここでお願いします。

私が2つのポイントを持っている場合p1(x1,y1)p2(x2,y2)方向は、、P1-->p2それはをp1指しp2ます。この方向をベクトルで表すには、Vector(x2-x1,y2-y1)それですかVector(x1-x2, y1-y2)

ちなみに、ベクトルを正規化する目的は何ですか?

0 投票する
1 に答える
854 参照

matlab - FFTと周波数の変更、およびFORループのベクトル化

FFTと周波数の変更およびforループのベクトル化

あいさつ

以下のコードでfftとフーリエ級数展開FORループの組み合わせを使用して信号の周波数を増減できますが、信号/配列が大きい場合は非常に遅くなります(1x44100の配列は完了するのに約2分かかります) )forループに関係していることは確かですが、パフォーマンスを向上させるためにベクトル化する方法が正確にはわかりません。これは、3〜6分の長さのオーディオ信号で使用されることに注意してください。1x44100アレイはわずか1秒で、完了するまでに約2分かかります

推奨事項

これは、誰かが出力を見たい場合のプロットの写真です。これは正しいです。FORループは本当に本当に遅いです。

ここに画像の説明を入力してください

0 投票する
4 に答える
442 参照

c++ - ユニオンを使用してクラスメンバー変数に同じメモリを割り当てる

既存の Vector クラスをベクトル化しようとしています

これらのメンバー変数にアクセスする他のクラスに影響を与えずに、クラス メンバーをベクトル化しようとしています。

しかし、メンバ名 X、Y、Z が見つからないため、コンパイル エラーが発生します。変数を取得する別の方法はありますか?

参考までに、このvector float型はIBM™ Cell Broadband Engine™ Software Development Kit V3.0 for Multicore Accelerationからのものです。

0 投票する
5 に答える
2160 参照

r - Rでベクトル化された関数を並列化する最も簡単な方法は何ですか?

私は非常に大きなリストXとベクトル化された関数を持っていますf。計算したいのですf(X)が、シングルコアで計算すると時間がかかります。私は48コアサーバーを持っています(アクセスできます)。の計算を並列化する最も簡単な方法は何f(X)ですか?以下は正しい答えではありません。

上記のコードは確かにの計算を並列化しますが、のすべての要素に個別にf(X)適用することによって並列化します。これはのベクトル化された性質を無視し、結果として物事を速くするのではなく遅くする可能があります。に要素ごとに適用するのではなく、適度なサイズのチャンクに分割して適用したいと思います。fXffXXf

Xでは、手動で48個の同じサイズのサブリストに分割し、それぞれに並行し適用fしてから、手動で結果をまとめる必要がありますか?または、このために設計されたパッケージはありますか?

誰かが疑問に思っている場合に備えて、私の特定のユースケースはここにあります。

0 投票する
4 に答える
689564 参照

r - ベクトル内の要素のインデックスを見つけるためのR関数はありますか?

Rには、要素xとベクトルがありvます。vに等しい要素の最初のインデックスを見つけたいx。これを行う1つの方法は次のとおりですwhich(x == v)[[1]]。しかし、それは非常に非効率的です。それを行うためのより直接的な方法はありますか?

xボーナスポイントについては、がベクトルの場合に機能する機能はありますか?つまり、の各要素の位置を示すインデックスのベクトルを返す必要がありxますv

0 投票する
4 に答える
16816 参照

r - ベクトル化された並列max()とmin()はありますか?

data.frame列「a」と「b」のあるaがあります。列aとbの中で最高と最低を含む「high」と「low」という列を追加したいと思います。

データフレームの行をループせずにこれを行う方法はありますか?

編集:これはOHLCデータ用であるため、高列と低列には、列全体ではなく、同じ行のaとbの間の最高と最低の要素が含まれている必要があります。これがひどい言い回しならごめんなさい。

0 投票する
1 に答える
805 参照

matlab - `for`ループを高速化するか、それらをベクトル化します

コードを書いたのですが、プログラムが遅すぎます。問題は次のとおりです。

Ax=bの問題を解決するために行列「A」を作成します

私は球を持っています(それはどんな形でもかまいません)、それはある点で示されています、

各点に座標ベクトル[xyz]を割り当てました。

Nはポイント数です。

最初にロードしてください(a)

飛行機でクリアできるかわかりませんか?

何か提案はありますか?提案を事前に感謝します。

マトリックスA ここで、Iは3x3単位行列であり、nijnijは二項積を示します n_ij n_ij

(a)関数を実行した後:1x200配列

0 投票する
1 に答える
811 参照

python - Python - これをベクトル形式で記述する方法

0 投票する
3 に答える
122 参照

matlab - 両方のベクトルが特定の値を持つ位置の数をカウントするにはどうすればよいですか?

ABは 2 つのベクトルですlength(A) = length(B)Aとのすべての要素はまたは のBいずれ01です。両方のベクトルが値を持つ位置の数を 1 行でカウントするにはどうすればよい1ですか?