CUDALink`
CUDALink`

CUDAMemoryLoad

CUDAMemoryLoad[list]

listCUDALink メモリマネージャに登録する.

CUDAMemoryLoad[img]

imgCUDALink メモリマネージャに登録する.

詳細とオプション

  • CUDALink パッケージがNeeds["CUDALink`"]でロードされていなければならない.
  • CUDAMemoryLoad使える型:
  • IntegerRealComplex
    "Byte""Bit16""Integer"
    "Byte[2]""Bit16[2]""Integer32[2]"
    "Byte[3]""Bit16[3]""Integer32[3]"
    "Byte[4]""Bit16[4]""Integer32[4]"
    "UnsignedByte""UnsignedBit16""UnsignedInteger"
    "UnsignedByte[2]""UnsignedBit16[2]""UnsignedInteger[2]"
    "UnsignedByte[3]""UnsignedBit16[3]""UnsignedInteger[3]"
    "UnsignedByte[4]""UnsignedBit16[4]""UnsignedInteger[4]"
    "Double""Float""Integer64"
    "Double[2]""Float[2]""Integer64[2]"
    "Double[3]""Float[3]""Integer64[3]"
    "Double[4]""Float[4]""Integer64[4]"
  • 以下のオプションが与えられる:
  • "Device"$CUDADeviceCUDA計算に使われるデバイス
    "TargetPrecision" Automatic計算に使用する精度

例題

すべて開くすべて閉じる

  (1)

まず CUDALink アプリケーションをロードする:

メモリをロードする:

CUDAMemoryInformationを使うとメモリについての情報が取り出せる:

加えられたメモリはCUDAMemoryUnloadで解放しなければならない:

スコープ  (4)

RealあるいはComplexとしてメモリを加えると,デバイスが倍精度をサポートしているかどうかに基づいた型が返される:

この場合,CUDAデバイスは倍精度をサポートしている:

"TargetPrecision"を設定すると,動作の変更を強制することができる:

加えられたメモリはCUDAMemoryUnloadで解放しなければならない:

画像を"UnsignedByte"型として加えることができる:

メモリを取り出すと,もとの画像と同じ特性の画像が返される.メモリはCUDAMemoryGetを使って取り出せる:

"TypeInformation"には画像情報が含まれる:

加えられたメモリはCUDAMemoryUnloadで解放しなければならない:

画像は指定の型で加えることができる:

メモリを取り出すと画像が返される:

グラフィックスオブジェクトを加えると,オブジェクトはラスタライズされる:

メモリを取り出すと,画像が返される:

加えられたメモリはCUDAMemoryUnloadで解放しなければならない:

オプション  (1)

"TargetPrecision"  (1)

RealあるいはComplexとしてメモリを加えると,デバイスが倍精度をサポートしているかどうかに基づいた型が返される:

これは"TargetPrecision"オプションを"Single""Double"に設定すると変更することができる.この例の場合,マシンには倍精度ハードウェアがあるが"TargetPrecision"が単精度なので,"Float"が使われる:

常に単精度型なら,型を"Float"または"ComplexFloat"に設定するとさらに分かりやすい:

アプリケーション  (2)

入力リストに2を加える:

CUDAFunctionを実行すると,内部的にメモリがロード,アンロード(入力がCUDAMemoryでない場合は)される. 入力画像の色を反転する:

CUDAFunctionLoadを使って関数をロードする:

入力パラメータを定義する:

CUDAFunctionを実行する:

Wolfram Research (2010), CUDAMemoryLoad, Wolfram言語関数, https://reference.wolfram.com/language/CUDALink/ref/CUDAMemoryLoad.html.

テキスト

Wolfram Research (2010), CUDAMemoryLoad, Wolfram言語関数, https://reference.wolfram.com/language/CUDALink/ref/CUDAMemoryLoad.html.

CMS

Wolfram Language. 2010. "CUDAMemoryLoad." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/CUDALink/ref/CUDAMemoryLoad.html.

APA

Wolfram Language. (2010). CUDAMemoryLoad. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/CUDALink/ref/CUDAMemoryLoad.html

BibTeX

@misc{reference.wolfram_2024_cudamemoryload, author="Wolfram Research", title="{CUDAMemoryLoad}", year="2010", howpublished="\url{https://reference.wolfram.com/language/CUDALink/ref/CUDAMemoryLoad.html}", note=[Accessed: 21-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_cudamemoryload, organization={Wolfram Research}, title={CUDAMemoryLoad}, year={2010}, url={https://reference.wolfram.com/language/CUDALink/ref/CUDAMemoryLoad.html}, note=[Accessed: 21-November-2024 ]}