Replies: 2 comments 1 reply
|
Hi @kmd2zjw, Thanks for bringing this up. From your example code, the pattern replication API means that we need to replicate a pattern of Could you provide more details, such as if An alternative approach is to use the ranged PIM copy APIs. By providing idxBegin and idxEnd, you can directly copy a pattern into a specific range of a PIM object, to avoid constructing a big vector in host memory. |
1 reply
|
@kmd2zjw it may take a while to design and implement this API with performance and energy modeling. So, I would recommend not waiting on this. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
I'm basing my MLP implementation off of the batched GEMM application, but before I begin to migrate the updated batched code I just wanted to make sure that it was fully implemented. Within the batched GEMM code, there is a TODO that requests a pattern replication feature:
// Concatenate matrices. Needs to be done once
std::vectorstd::vector batchedSrcMatA;
for (uint64_t i = 0; i < colA; ++i)
{
std::vector temp;
for (uint64_t j = 0; j < batchSize; ++j) {
// TODO: Add replicate a pattern API in the simulator
for (uint64_t k = 0; k < row; ++k) {
temp.push_back(srcMatrixAT[i][k]);
}
}
batchedSrcMatA.push_back(temp);
}
So I was wondering if this is worth waiting for or if I should proceed with updating MLP?
All reactions