| 42 | } |
| 43 | |
| 44 | size_t SVD::get_workspace_in_bytes( |
| 45 | const TensorLayout& src, const TensorLayout& u, const TensorLayout& s, |
| 46 | const TensorLayout& vt) { |
| 47 | MEGDNN_MARK_USED_VAR(u); |
| 48 | MEGDNN_MARK_USED_VAR(s); |
| 49 | MEGDNN_MARK_USED_VAR(vt); |
| 50 | |
| 51 | size_t block_cnt, m, n; |
| 52 | canonize_params(src, &block_cnt, &m, &n); |
| 53 | return get_workspace_in_bytes(block_cnt, m, n, src.dtype.size()); |
| 54 | } |
| 55 | |
| 56 | void SVD::canonize_params( |
| 57 | const TensorLayout& layout, size_t* block_cnt, size_t* m, size_t* n) { |