Я хотел бы рассчитать ширину полосы умножения и сложения матричного вектора: (предположим, A = M, умноженное на N, большое) y = A * x + b
Но я немного запутался в том, что прочитал ичисло записи в количестве байтов, считанных из глобальной памяти:
- эффективная пропускная способность:
bytesReadWrite = M*N (for reading A) + N(for read x) + M (for read b) + M(for write y)
или
bytesReadWrite = M*N (for reading A) + M*N (for read x) + M (for read b) + M(for write y)
M * N для x, потому чтов основном мы читаем один раз весь x для каждой строки (также, если мы работаем с общей памятью, мы в конечном итоге читаем один раз вектор x для каждой строки)
Есть ли у кого-нибудь полезные советы о том, что является правильным выбором?Я действительно не понимаю ...
Я склонен использовать первый расчет, но почему?Имеет ли это смысл?
Большое спасибо !!!