예제 #1
0
void magma_srotmg(
    float *d1, float       *d2,
    float *x1, const float *y1,
    float *param )
{
    cublasSrotmg( d1, d2, x1, y1, param );
}
예제 #2
0
CAMLprim value spoc_cublasSrotmg (value host_psd1, value host_psd2, value host_psx1, value host_psy1, value host_sparam){
	CAMLparam5(host_psd1, host_psd2, host_psx1, host_psy1, host_sparam);
	CAMLlocal2(bigArray, gi);
	int id;
	enum cudaError_enum cuda_error = 0;
	cublasStatus cublas_error = CUBLAS_STATUS_SUCCESS;
	float* h_A;
	float* h_B;
	float* h_C;
	float* h_D;
	float* h_E;
	GET_HOST_VEC(host_psd1, h_A);
	GET_HOST_VEC(host_psd2, h_B);
	GET_HOST_VEC(host_psx1, h_C);
	GET_HOST_VEC(host_psy1, h_D);
	GET_HOST_VEC(host_sparam, h_E);
	CUBLAS_GET_CONTEXT;

	cublasSrotmg(h_A, h_B, h_C, h_D, h_E);
	CUBLAS_CHECK_CALL(cublasGetError());
	CUBLAS_RESTORE_CONTEXT;
	CAMLreturn(Val_unit);
}