加治/日誌/2012-09-06
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[加治/日誌]]
*研究 [#o507972a]
**CUDA化する関数 [#o686545d]
-rankExtraction()
-backTrace()
-qsort()?
--compare_res()?
**進捗 [#i57793ec]
-関数書き換え作業中
**rankExtraction()について [#tdfafa6f]
-qsort関数が使われているので、この関数をCUDA化するなら、GPU用のqsort()を自分で実装する必要がある・・・?
-resbufのGPU側に確保する必要がある。(メモリは大丈夫?)
-ここでaccmbuf(ホスト側)を用いた処理が行われているため、ホストに転送せずにresbufに値を入れなければならない
--そのためにはresbufはデバイス側に確保する
-もともとこの関数には引数が無いが、使われる変数がdi,dm,rh,rw,djiとあるので、これらの変数を引数にしてデバイス側に伝えようとしているが、cudaMemcpyするしか方法はないのだろうか。
**backTrace()について [#b31f2361]
-呼び出し元のcdpInit()内では、backTraceを呼び出すのにresbufが使われているため、上記rankExtraction()はGPU側で行われている必要がある。
-また、backTrace()はint型なので、呼び出し元で現在のような戻り値を利用した条件判定がCUDA化するとできないため、backTraceをCUDA化して、判定用に引数を増やす
--判定用の引数を追加するとデータ転送する必要がある
---足かせになる・・・?
**気づいたもの [#n099ee73]
***cudaHostAllocMapped [#x84136d8]
-カーネル関数から直接ホストメモリにアクセスできるようになるらしい・・・?
-ただし普通のAPIを使った時より低速になるとか
終了行:
[[加治/日誌]]
*研究 [#o507972a]
**CUDA化する関数 [#o686545d]
-rankExtraction()
-backTrace()
-qsort()?
--compare_res()?
**進捗 [#i57793ec]
-関数書き換え作業中
**rankExtraction()について [#tdfafa6f]
-qsort関数が使われているので、この関数をCUDA化するなら、GPU用のqsort()を自分で実装する必要がある・・・?
-resbufのGPU側に確保する必要がある。(メモリは大丈夫?)
-ここでaccmbuf(ホスト側)を用いた処理が行われているため、ホストに転送せずにresbufに値を入れなければならない
--そのためにはresbufはデバイス側に確保する
-もともとこの関数には引数が無いが、使われる変数がdi,dm,rh,rw,djiとあるので、これらの変数を引数にしてデバイス側に伝えようとしているが、cudaMemcpyするしか方法はないのだろうか。
**backTrace()について [#b31f2361]
-呼び出し元のcdpInit()内では、backTraceを呼び出すのにresbufが使われているため、上記rankExtraction()はGPU側で行われている必要がある。
-また、backTrace()はint型なので、呼び出し元で現在のような戻り値を利用した条件判定がCUDA化するとできないため、backTraceをCUDA化して、判定用に引数を増やす
--判定用の引数を追加するとデータ転送する必要がある
---足かせになる・・・?
**気づいたもの [#n099ee73]
***cudaHostAllocMapped [#x84136d8]
-カーネル関数から直接ホストメモリにアクセスできるようになるらしい・・・?
-ただし普通のAPIを使った時より低速になるとか
ページ名: