Skip to content
This repository has been archived by the owner on Mar 21, 2024. It is now read-only.

Add extended API documentation #53

Merged
merged 1 commit into from
Nov 17, 2020
Merged

Add extended API documentation #53

merged 1 commit into from
Nov 17, 2020

Conversation

c0riolis
Copy link
Contributor

@c0riolis c0riolis commented Oct 22, 2020

  • Do the required Jekyll changes
  • Fix relative links
  • Document Group concept & aligned_size_t
  • Add missing examples
  • Verify that all examples are compiling

@brycelelbach brycelelbach added this to the 1.4.0 milestone Oct 29, 2020
@c0riolis c0riolis force-pushed the docs/extended-api branch 12 times, most recently from dde06ca to 8d29c49 Compare November 6, 2020 09:45
@c0riolis c0riolis changed the title WIP: Add extended API documentation Add extended API documentation Nov 6, 2020
@c0riolis
Copy link
Contributor Author

c0riolis commented Nov 6, 2020

I think this is ready to be reviewed in depth.

The rendered version of this PR is available here:
https://draft.dll.pe/

Note: I left the cuda::memcpy_async example as a To-Do since @gonzalobg wanted to take a stab at it in PR #70 .

@hcedwar
Copy link

hcedwar commented Nov 10, 2020

Given that memcpy_async is supposed to be a replacement for assigning from global memory to shared memory ( #53 (comment) ) the statement
The implementation may perform the copy synchronously in some implementation defined cases.
is inadequate for users to understand when asynchronous functionality is or is not possible.
Emphasis should be on how GPU customer-developers can obtain value (asynchronous functionality), not on how to introduce minimal wording change from std::memcpy.

@griwes
Copy link
Collaborator

griwes commented Nov 10, 2020

@hcedwar thanks, that's good feedback, but can you contribute to the long comment thread above? Thanks!

docs/extended_api/concepts/group.md Outdated Show resolved Hide resolved
docs/extended_api/concepts/group.md Outdated Show resolved Hide resolved
docs/extended_api/concepts/group.md Outdated Show resolved Hide resolved
docs/extended_api/concepts/shape.md Outdated Show resolved Hide resolved
docs/extended_api/synchronization_library/pipeline_role.md Outdated Show resolved Hide resolved
@c0riolis
Copy link
Contributor Author

c0riolis commented Nov 11, 2020

Thanks for the review @griwes, I addressed most of your comments and replied to a couple of others for clarification. The PR / preview now reflects those changes.

@c0riolis
Copy link
Contributor Author

Given that memcpy_async is supposed to be a replacement for assigning from global memory to shared memory ( #53 (comment) ) the statement
The implementation may perform the copy synchronously in some implementation defined cases.
is inadequate for users to understand when asynchronous functionality is or is not possible.
Emphasis should be on how GPU customer-developers can obtain value (asynchronous functionality), not on how to introduce minimal wording change from std::memcpy.

@hcedwar: I do not think that this is the role of this document to specify in which cases the implementation actually exhibits asynchronous behavior, especially since it varies depending on the architecture.

In my opinion, this information belongs to one of our other guides (programming guide, best practices guide, architecture-specific tuning guide).

@c0riolis c0riolis merged commit 6a69a77 into main Nov 17, 2020
@c0riolis c0riolis deleted the docs/extended-api branch November 17, 2020 20:33
@github-pages github-pages bot temporarily deployed to github-pages November 17, 2020 20:33 Inactive
@gonzalobg
Copy link
Collaborator

Thank you @c0riolis for doing all this work, the new docs look great!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants