2013-03-19 20 views
5

Có một số quy trình BLAS nhất định lấy làm tham số gia tăng của vectơ X, cụ thể là incX. Tôi không thể tìm thấy mức tăng là gì và nó ảnh hưởng như thế nào đến kết quả tính toán.incx trong các quy trình BLAS

Có ai có thể cung cấp một số ví dụ hoặc bất kỳ loại thông tin nào khác không?

Cập nhật:

Tôi đã tìm thấy ở đây những thông tin tốt nhất: Intel HPC mkl manual

+0

Hướng dẫn HPC có trả lời câu hỏi của bạn không? Sau đó, vui lòng xóa bản cập nhật khỏi câu hỏi và đăng câu hỏi đó làm câu trả lời và chấp nhận câu hỏi đó. – Bakuriu

+0

Tôi nghĩ rằng liên kết không chính xác - Tôi nghĩ bạn đang tìm kiếm tài liệu hướng dẫn sử dụng MK ** L **, nhưng nó liên kết đến tham chiếu intel MP ** I **; nhưng tôi có thể sai. – Luciano

Trả lời

9

này khá đơn giản thực sự.

Hãy lấy ví dụ về axpy(n,a,*x,incx,*y,incy) mà tính: y = ax + y

Nếu, ví dụ, bạn cần phải tính toán:

y[0] = ax[0] + y[0]; y[1] = ax[2] + y[1]; y[2] = ax[4] + y[2] 

Sau đó, cuộc gọi của bạn là: axpy(3,a,x,2,y,1)

Nhưng thông thường, đối với cơ bản hoạt động, bạn chỉ cần chỉ định incx = incy = 1

+0

Ngoài sự tò mò, có bất kỳ hoạt động nào trong đại số ma trận cần loại chỉ mục 'modulo' này không? Hay nó chỉ được sử dụng để thao tác dữ liệu? Tôi đến bài đăng này vì tôi đã tự hỏi tại sao các thói quen L1 cần tham số 'inc' này, vì vectơ 1-D nên có' inc' = 1. – Luciano

+1

Tôi nghĩ nó chỉ dùng để thao tác dữ liệu ... Nếu bạn có 3D vectơ của biểu mẫu (x0, y0, z0, x1, y1, z1, ...) và bạn phải thêm một véc tơ 1D vào giá trị X chẳng hạn, tham số này sẽ hữu ích ('incx = 3',' incy = 1'). – Michael

+0

Cảm ơn, điều đó thực sự hữu ích. Bạn có thể sử dụng điều này khi làm việc với số phức hoặc [quaternions] (https://en.wikipedia.org/wiki/Quaternion). Ví dụ 'Re (z) + 23', (trong đó' z' là phức tạp 'x + iy'), loại bỏ phần ảo. – Luciano