Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Global memory manager and preallocated buffer size #9

Open
ChenhanYu opened this issue Nov 7, 2016 · 0 comments
Open

Global memory manager and preallocated buffer size #9

ChenhanYu opened this issue Nov 7, 2016 · 0 comments
Assignees

Comments

@ChenhanYu
Copy link
Owner

ChenhanYu commented Nov 7, 2016

Notice that now we allocate packing buffer in a dynamic fashion inside our framework. The overhead seems ok but it may be good to preallocate the buffer with an initialized function such hmlp_init().

The reason that this is valuable is because there are some other temporary buffers we may need.

GSKS and GSKNN:
when k > KC, we need to store the rank-KC update.

GKMM:
when k > KC and TV != TC, we need to store the rank-KC update in type TV.

GKRM:
when k > KC and TV != TC, we need to store the rank-KC update in type TV.

GKRM on GPU:
we need an m-by-n/4 buffer in type TC to perform global reduction.

several references: (thanks Jianyu for providing the links)

http://stackoverflow.com/questions/29410064/aligned-dynamic-array-and-smart-pointer
http://www.codeproject.com/Articles/392576/Ideas-from-a-smart-pointer-Support-data-alignment

@ChenhanYu ChenhanYu self-assigned this Nov 7, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant