YoGA features » Historique » Version 1
Damien Gratadour, 25/10/2013 09:24
| 1 | 1 | Damien Gratadour | h1. YoGA features |
|---|---|---|---|
| 2 | |||
| 3 | A list of features with corresponding wrappers is provided in the following. All these operations can be performed on a YoGA object. This webpage may not be up to date. Please refer to the file yoga.i for a complete list of available features. To get a full description of the syntax please use the help function in a Yorick session. |
||
| 4 | |||
| 5 | h2. General utilities |
||
| 6 | |||
| 7 | * extern _GetMaxGflopsDeviceId get the ID of the best CUDA-capable device on your system |
||
| 8 | * extern _setDeviceId set the active device to the specified ID |
||
| 9 | * func setDeviceId set the active device to the specified ID and returns its name |
||
| 10 | * extern _listDevice returns the list of CUDA-capable devices on your system |
||
| 11 | * extern _nbDevice returns the number of CUDA-capable devices on your system |
||
| 12 | * extern _yogaThreadExit exist threads on the active device |
||
| 13 | * extern _yogaThreadSync synchronizes threads on the active device |
||
| 14 | * extern _yogaInit init a YoGA session on the specified device |
||
| 15 | * extern _yogaInitCublas init a CUBLAS session on the active device |
||
| 16 | * extern _yogaShutdownCublas shutdown the CUBLAS session on the active device |
||
| 17 | |||
| 18 | |||
| 19 | h2. Arrays manipulations |
||
| 20 | |||
| 21 | * extern yoga_obj creates an array on the GPU |
||
| 22 | * extern yoga_host2device fills an object on the GPU with data from the Yorick session |
||
| 23 | * extern yoga_device2host transfers data from an object on the GPU to the Yorick session |
||
| 24 | * extern yoga_setv create a new cublasVector from input data |
||
| 25 | * extern yoga_setm create a new cublasMatrix from input data |
||
| 26 | * extern yoga_getarray get a sub-array of input object specified by a range |
||
| 27 | * extern yoga_fillarray fill a sub-array of input object specified by a range |
||
| 28 | * extern yoga_getarray get the value of an array at specified position |
||
| 29 | * extern yoga_plus add a scalar to all the elements of an array |
||
| 30 | * extern yoga_plusai add a scalar (an element of a source array) to all the elements of an array |
||
| 31 | |||
| 32 | |||
| 33 | h2. Matrix Operations |
||
| 34 | |||
| 35 | YoGA provides support for most of the cublas functions as well as an autotuned custom tranpose method from the NVIDIA SDK. |
||
| 36 | |||
| 37 | h3. BLAS functions |
||
| 38 | |||
| 39 | * extern yoga_imax returns the smallest index of the maximum magnitude element of obj |
||
| 40 | * extern yoga_imin returns the smallest index of the minimum magnitude element of obj |
||
| 41 | * extern yoga_asum retuns the sum of the absolute values of obj |
||
| 42 | * extern yoga_nrm2 returns the Euclidean norm of obj |
||
| 43 | * extern yoga_scale scales vectx by an amount specified by the second argument |
||
| 44 | * extern yoga_swap swaps the content of the 2 arguments |