問題タブ [absolute-value]

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 投票する
1 に答える
16057 参照

c++ - Eigenでベクトルの絶対値を計算するにはどうすればよいですか?

Eigenでベクトルの絶対値を計算するにはどうすればよいですか? 当たり前の方法なので

動作しません。

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

c++ - バイト操作の最適化 CUDA

私はCudaに比較的慣れていないので、クエリベクトルとベクトルの大規模なデータベースとの間の絶対差の合計を計算するカーネルを作成しようとしています。両方の要素は、8 ビットの unsigned int でなければなりません。私は自分のカーネルを nvidias サンプルの並列削減カーネルに基づいて作成しました。このスレッドも読みました。

約 5GB/秒しか得られませんが、これは高速な CPU よりもはるかに優れているわけではなく、私の DDR5 GT640 の理論上の帯域幅である約 80GB/秒にも達していません。

私のデータ セットは、1024 バイトのクエリ ベクトル、100,000 x 1024 バイトのデータベースで構成されています

128 スレッドの 100,000 ブロックがあります。各ブロックが同じ 1024 バイトの query_vector にアクセスすると、パフォーマンスが低下しますか? すべてのブロックが同じメモリ位置にアクセスしているためです。

blockSize と共有メモリは両方とも 128 と 128*sizeof(int) に設定され、128 は THREADS_PER_BLOCK として #define されます

実際の絶対差の計算を行う 4 行のコードをコメントアウトしてカーネルを実行すると、約 4 倍の帯域幅の増加を得ることができます。明らかに間違った答えになりますが、少なくとも時間のかなりの部分はそこで過ごしました。

バイトにアクセスする方法でバンク競合が発生する可能性はありますか? もしそうなら、私は衝突を避けることができますか?

私の使い方はreinterpret_cast正しいですか?

8ビットの符号なし計算を行うためのより良い方法はありますか?

他にどのような最適化を行うことができますか (私は完全な初心者なので、多くのことを想定しています)。

ありがとう

編集:

私のマシンのスペックは次のとおりです。

Windows XP 2002 SP3

インテル 6600 2.40GHz

2GBのラム

GT640 GDDR5 1GB

ビジュアル C++ 2010 エクスプレス

0 投票する
10 に答える
10848 参照

algorithm - サブアレイの最小絶対和を見つける

A(正と負の) 整数を含む配列があります。要素の絶対合計が最小である (連続した) サブ配列を見つけます。

正しい結果が得られましたがO(N^2)、 orであったブルートフォースアルゴリズムを実装することから始めました。O(N^3)ただし、タスクは次のように指定します。

いくつか検索した後、この問題に合わせて Kadane のアルゴリズムを変更できるのではないかと考えましたが、失敗しました。

私の質問は - Kadane のアルゴリズムは正しい方法ですか? そうでない場合は、正しい方向に向けていただけますか (または、ここで役立つアルゴリズムを挙げてください)。既製のコードは必要ありません。適切なアルゴリズムを見つけるための助けが必要なだけです。

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

c# - 「for」ループを使用する SharpDevelop のこの小さな C# プログラムが機能しないのはなぜですか?

私は完全な初心者です。SharpDevelop で小さな C# プログラムを作成しました。ここにあります:

私のプログラムは、(たとえば)とがそれぞれとに等しく、とが正の整数であるijを見つけることになっています。( typeの代わりに typeを使用できることはわかっていますが、 type で機能させたいと考えています。)ln(i)/ln(j)=0.63092975357ijn/60m/60nmintdoubledouble

しかし、うまくいきません。「プロジェクトの実行」をクリックすると、黒い画面がポップアップしますが、何も起こりません...また、SharpDevelopはエラーを指摘しません...

それで、私はどんな間違いをしましたか?そして、私のプログラムを修正する方法は?

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

python - Python の 2 つのコードは同じ結果になるはずですが、そうではありません

説明: 次のコードは、n 次元の 2 つのドットの座標を受け取ります。これらの 2 つのドットのマンハッタン距離を計算します。コード:

異なる結果を出していますが、その理由はわかりません。誰か助けてくれませんか?

PS: リスト内のすべての値は正です

PS2:私の分類が取得する最初のもので

K1: Expected Class: 6, Found Class: 0 K2: Expected Class: 6, Found Class: 0 K3: Expected Class: 6, Found Class: 0 K4: Expected Class: 6, Found Class: 0 K5: Expected Class: 6, Found Class: 0

そして、私が得る他のものと K1: Expected Class: 6, Found Class: 6 K2: Expected Class: 6, Found Class: 6 K3: Expected Class: 6, Found Class: 6 K4: Expected Class: 6, Found Class: 6 K5: Expected Class: 6, Found Class: 6

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

c# - 減算式の絶対値を計算するより効率的な方法はありますか

質問はほとんどそれをすべて言います。現時点でMath.Abs(a - b)は、減算式の絶対値を計算するために使用しています。例5 - 1010 - 5両方を返し5ます。

これを行うためのより効率的な方法はありますか、それとも最も効率的な方法ですか?

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

vba - MS Excel 2010 - 他の VBA に配置すると Abs() を使用した計算が機能しなくなる

今月の KPI の数値を先月の同等の数値と比較し、各数値の横に記号を追加して、パフォーマンスが優れているか、劣っているか、または同じであるかを示すマクロを作成しました。数値が 100% に近いほどパフォーマンスが高く、離れているほどパフォーマンスが低下します。望ましい結果は次のようなものです。

【先月図、今月図、希望記号、備考】

例 1 - [98,99,↑,今月の数値が 100 に近づいたのでパフォーマンスが向上しました]

例 2 - [101,102,↓,100 から遠いほどパフォーマンスが悪い]

例 3 - [98,98,=,数値は同じなので性能に変化はありません]

例 4 - [98,102,±,パフォーマンスは良くも悪くもありませんが、先月は目標を下回り、今月は目標を上回っています。または、数値が 102,98 の場合はその逆です]

次のコード ブロックを単独で実行すると、正常に動作します。

ただし、同じコードがより大きなマクロの一部として使用されている場合はそうではありません。

より大きなマクロの一部として実行すると、100 を超える数字に対して矢印が間違った方向に回転します。なぜこれが起こっているのか、それとももっと良い方法がありますか? 一般的にコードを整理することについてのコメントも大歓迎です。

追加情報: これらのワークブックには他の列があり、数値が上がると矢印が常に上向きになり、Abs()newCell と checkCell を使用せずに比較するだけの同様のコード ブロックが、より大きなマクロのこれらの列に対して直接正常に機能します。