Loading...
Searching...
No Matches
dot: Dot (inner) product
Dense LA » MAGMA BLAS and Auxiliary » Level 1: vectors operations, O(n) work

\(x^T y\) or \(x^H y\) More...

## Functions

magmaFloatComplex | magma_cblas_cdotc (magma_int_t n, const magmaFloatComplex *x, magma_int_t incx, const magmaFloatComplex *y, magma_int_t incy)
| Returns dot product of vectors x and y; \( x^H y \).
magmaFloatComplex | magma_cblas_cdotu (magma_int_t n, const magmaFloatComplex *x, magma_int_t incx, const magmaFloatComplex *y, magma_int_t incy)
double | magma_cblas_ddot (magma_int_t n, const double *x, magma_int_t incx, const double *y, magma_int_t incy)
float | magma_cblas_sdot (magma_int_t n, const float *x, magma_int_t incx, const float *y, magma_int_t incy)
magmaDoubleComplex | magma_cblas_zdotc (magma_int_t n, const magmaDoubleComplex *x, magma_int_t incx, const magmaDoubleComplex *y, magma_int_t incy)
| Returns dot product of vectors x and y; \( x^H y \).
magmaDoubleComplex | magma_cblas_zdotu (magma_int_t n, const magmaDoubleComplex *x, magma_int_t incx, const magmaDoubleComplex *y, magma_int_t incy)
magmaFloatComplex | magma_cdotc (magma_int_t n, magmaFloatComplex_const_ptr dx, magma_int_t incx, magmaFloatComplex_const_ptr dy, magma_int_t incy, magma_queue_t queue)
magmaFloatComplex | magma_cdotu (magma_int_t n, magmaFloatComplex_const_ptr dx, magma_int_t incx, magmaFloatComplex_const_ptr dy, magma_int_t incy, magma_queue_t queue)
double | magma_ddot (magma_int_t n, magmaDouble_const_ptr dx, magma_int_t incx, magmaDouble_const_ptr dy, magma_int_t incy, magma_queue_t queue)
float | magma_sdot (magma_int_t n, magmaFloat_const_ptr dx, magma_int_t incx, magmaFloat_const_ptr dy, magma_int_t incy, magma_queue_t queue)
magmaDoubleComplex | magma_zdotc (magma_int_t n, magmaDoubleComplex_const_ptr dx, magma_int_t incx, magmaDoubleComplex_const_ptr dy, magma_int_t incy, magma_queue_t queue)
magmaDoubleComplex | magma_zdotu (magma_int_t n, magmaDoubleComplex_const_ptr dx, magma_int_t incx, magmaDoubleComplex_const_ptr dy, magma_int_t incy, magma_queue_t queue)

## Detailed Description

\(x^T y\) or \(x^H y\)

## Function Documentation

## magma_cblas_cdotc()

magmaFloatComplex magma_cblas_cdotc | ( | magma_int_t | n,
|  | const magmaFloatComplex * | x,
|  | magma_int_t | incx,
|  | const magmaFloatComplex * | y,
|  | magma_int_t | incy )

Returns dot product of vectors x and y; \( x^H y \).

To avoid dependence on CBLAS and incompatability issues between BLAS libraries, MAGMA uses its own implementation, following BLAS reference.

Parameters

  [in] | n | Number of elements in vector x and y. n >= 0.
  [in] | x | COMPLEX array on CPU host. The n element vector x of dimension (1 + (n-1)*incx).
  [in] | incx | Stride between consecutive elements of x. incx > 0.
  [in] | y | COMPLEX array on CPU host. The n element vector y of dimension (1 + (n-1)*incy).
  [in] | incy | Stride between consecutive elements of dy. incy > 0.

## magma_cblas_cdotu()

magmaFloatComplex magma_cblas_cdotu | ( | magma_int_t | n,
|  | const magmaFloatComplex * | x,
|  | magma_int_t | incx,
|  | const magmaFloatComplex * | y,
|  | magma_int_t | incy )

Returns
  dot product (unconjugated) of vectors x and y; \( x^T y \).

To avoid dependence on CBLAS and incompatability issues between BLAS libraries, MAGMA uses its own implementation, following BLAS reference.

Parameters

  [in] | n | Number of elements in vector x and y. n >= 0.
  [in] | x | COMPLEX array on CPU host. The n element vector x of dimension (1 + (n-1)*incx).
  [in] | incx | Stride between consecutive elements of x. incx > 0.
  [in] | y | COMPLEX array on CPU host. The n element vector y of dimension (1 + (n-1)*incy).
  [in] | incy | Stride between consecutive elements of dy. incy > 0.

## magma_cblas_ddot()

double magma_cblas_ddot | ( | magma_int_t | n,
|  | const double * | x,
|  | magma_int_t | incx,
|  | const double * | y,
|  | magma_int_t | incy )

Returns
  dot product (unconjugated) of vectors x and y; \( x^T y \).

To avoid dependence on CBLAS and incompatability issues between BLAS libraries, MAGMA uses its own implementation, following BLAS reference.

Parameters

  [in] | n | Number of elements in vector x and y. n >= 0.
  [in] | x | DOUBLE PRECISION array on CPU host. The n element vector x of dimension (1 + (n-1)*incx).
  [in] | incx | Stride between consecutive elements of x. incx > 0.
  [in] | y | DOUBLE PRECISION array on CPU host. The n element vector y of dimension (1 + (n-1)*incy).
  [in] | incy | Stride between consecutive elements of dy. incy > 0.

## magma_cblas_sdot()

float magma_cblas_sdot | ( | magma_int_t | n,
|  | const float * | x,
|  | magma_int_t | incx,
|  | const float * | y,
|  | magma_int_t | incy )

Returns
  dot product (unconjugated) of vectors x and y; \( x^T y \).

To avoid dependence on CBLAS and incompatability issues between BLAS libraries, MAGMA uses its own implementation, following BLAS reference.

Parameters

  [in] | n | Number of elements in vector x and y. n >= 0.
  [in] | x | REAL array on CPU host. The n element vector x of dimension (1 + (n-1)*incx).
  [in] | incx | Stride between consecutive elements of x. incx > 0.
  [in] | y | REAL array on CPU host. The n element vector y of dimension (1 + (n-1)*incy).
  [in] | incy | Stride between consecutive elements of dy. incy > 0.

## magma_cblas_zdotc()

magmaDoubleComplex magma_cblas_zdotc | ( | magma_int_t | n,
|  | const magmaDoubleComplex * | x,
|  | magma_int_t | incx,
|  | const magmaDoubleComplex * | y,
|  | magma_int_t | incy )

Returns dot product of vectors x and y; \( x^H y \).

To avoid dependence on CBLAS and incompatability issues between BLAS libraries, MAGMA uses its own implementation, following BLAS reference.

Parameters

  [in] | n | Number of elements in vector x and y. n >= 0.
  [in] | x | COMPLEX_16 array on CPU host. The n element vector x of dimension (1 + (n-1)*incx).
  [in] | incx | Stride between consecutive elements of x. incx > 0.
  [in] | y | COMPLEX_16 array on CPU host. The n element vector y of dimension (1 + (n-1)*incy).
  [in] | incy | Stride between consecutive elements of dy. incy > 0.

## magma_cblas_zdotu()

magmaDoubleComplex magma_cblas_zdotu | ( | magma_int_t | n,
|  | const magmaDoubleComplex * | x,
|  | magma_int_t | incx,
|  | const magmaDoubleComplex * | y,
|  | magma_int_t | incy )

Returns
  dot product (unconjugated) of vectors x and y; \( x^T y \).

To avoid dependence on CBLAS and incompatability issues between BLAS libraries, MAGMA uses its own implementation, following BLAS reference.

Parameters

  [in] | n | Number of elements in vector x and y. n >= 0.
  [in] | x | COMPLEX_16 array on CPU host. The n element vector x of dimension (1 + (n-1)*incx).
  [in] | incx | Stride between consecutive elements of x. incx > 0.
  [in] | y | COMPLEX_16 array on CPU host. The n element vector y of dimension (1 + (n-1)*incy).
  [in] | incy | Stride between consecutive elements of dy. incy > 0.

## magma_cdotc()

magmaFloatComplex magma_cdotc | ( | magma_int_t | n,
|  | magmaFloatComplex_const_ptr | dx,
|  | magma_int_t | incx,
|  | magmaFloatComplex_const_ptr | dy,
|  | magma_int_t | incy,
|  | magma_queue_t | queue )

Returns
  Dot product of vectors x and y; \( x^H y \).

Parameters

  [in] | n | Number of elements in vector x and y. n >= 0.
  [in] | dx | COMPLEX array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
  [in] | incx | Stride between consecutive elements of dx. incx != 0.
  [in] | dy | COMPLEX array on GPU device. The n element vector y of dimension (1 + (n-1)*incy).
  [in] | incy | Stride between consecutive elements of dy. incy != 0.
  [in] | queue | magma_queue_t Queue to execute in.

## magma_cdotu()

magmaFloatComplex magma_cdotu | ( | magma_int_t | n,
|  | magmaFloatComplex_const_ptr | dx,
|  | magma_int_t | incx,
|  | magmaFloatComplex_const_ptr | dy,
|  | magma_int_t | incy,
|  | magma_queue_t | queue )

Returns
  Dot product (unconjugated) of vectors x and y; \( x^T y \).

Parameters

  [in] | n | Number of elements in vector x and y. n >= 0.
  [in] | dx | COMPLEX array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
  [in] | incx | Stride between consecutive elements of dx. incx != 0.
  [in] | dy | COMPLEX array on GPU device. The n element vector y of dimension (1 + (n-1)*incy).
  [in] | incy | Stride between consecutive elements of dy. incy != 0.
  [in] | queue | magma_queue_t Queue to execute in.

## magma_ddot()

double magma_ddot | ( | magma_int_t | n,
|  | magmaDouble_const_ptr | dx,
|  | magma_int_t | incx,
|  | magmaDouble_const_ptr | dy,
|  | magma_int_t | incy,
|  | magma_queue_t | queue )

Returns
  Dot product (unconjugated) of vectors x and y; \( x^T y \).

Parameters

  [in] | n | Number of elements in vector x and y. n >= 0.
  [in] | dx | DOUBLE PRECISION array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
  [in] | incx | Stride between consecutive elements of dx. incx != 0.
  [in] | dy | DOUBLE PRECISION array on GPU device. The n element vector y of dimension (1 + (n-1)*incy).
  [in] | incy | Stride between consecutive elements of dy. incy != 0.
  [in] | queue | magma_queue_t Queue to execute in.

## magma_sdot()

float magma_sdot | ( | magma_int_t | n,
|  | magmaFloat_const_ptr | dx,
|  | magma_int_t | incx,
|  | magmaFloat_const_ptr | dy,
|  | magma_int_t | incy,
|  | magma_queue_t | queue )

Returns
  Dot product (unconjugated) of vectors x and y; \( x^T y \).

Parameters

  [in] | n | Number of elements in vector x and y. n >= 0.
  [in] | dx | REAL array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
  [in] | incx | Stride between consecutive elements of dx. incx != 0.
  [in] | dy | REAL array on GPU device. The n element vector y of dimension (1 + (n-1)*incy).
  [in] | incy | Stride between consecutive elements of dy. incy != 0.
  [in] | queue | magma_queue_t Queue to execute in.

## magma_zdotc()

magmaDoubleComplex magma_zdotc | ( | magma_int_t | n,
|  | magmaDoubleComplex_const_ptr | dx,
|  | magma_int_t | incx,
|  | magmaDoubleComplex_const_ptr | dy,
|  | magma_int_t | incy,
|  | magma_queue_t | queue )

Returns
  Dot product of vectors x and y; \( x^H y \).

Parameters

  [in] | n | Number of elements in vector x and y. n >= 0.
  [in] | dx | COMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
  [in] | incx | Stride between consecutive elements of dx. incx != 0.
  [in] | dy | COMPLEX_16 array on GPU device. The n element vector y of dimension (1 + (n-1)*incy).
  [in] | incy | Stride between consecutive elements of dy. incy != 0.
  [in] | queue | magma_queue_t Queue to execute in.

## magma_zdotu()

magmaDoubleComplex magma_zdotu | ( | magma_int_t | n,
|  | magmaDoubleComplex_const_ptr | dx,
|  | magma_int_t | incx,
|  | magmaDoubleComplex_const_ptr | dy,
|  | magma_int_t | incy,
|  | magma_queue_t | queue )

Returns
  Dot product (unconjugated) of vectors x and y; \( x^T y \).

Parameters

  [in] | n | Number of elements in vector x and y. n >= 0.
  [in] | dx | COMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
  [in] | incx | Stride between consecutive elements of dx. incx != 0.
  [in] | dy | COMPLEX_16 array on GPU device. The n element vector y of dimension (1 + (n-1)*incy).
  [in] | incy | Stride between consecutive elements of dy. incy != 0.
  [in] | queue | magma_queue_t Queue to execute in.