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

[Documentation] Programming Model, Kernel Programming guide #1388

Merged
merged 4 commits into from
Mar 27, 2024

Conversation

diptorupd
Copy link
Contributor

@diptorupd diptorupd commented Mar 17, 2024

Adds new material to the kernel programming guide and the programming model sections.

Fixes #1042

@diptorupd diptorupd marked this pull request as draft March 17, 2024 05:48
Copy link
Contributor

Documentation preview: show.

@diptorupd diptorupd force-pushed the docs/programming_model branch 4 times, most recently from 922a7a9 to 67400a3 Compare March 19, 2024 05:37
Comment on lines 35 to 43
executes a single addition. Note that the array sizes for the input and output
arguments are equal to the size of the execution range. For very large arrays,
the design will not scale as there is usually an upper bound for the range size
depending on device. For most current Intel GPU devices, the maximum range size
is 2^32 and a kernel requesting more work items than that bound will not
execute. As such, programmers need to consider the size of the data and the
access patterns for their kernels before scheduling a range kernel. The maximum
number of work items can be queried programmatically as shown in
:ref:`ex_max_work_item`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this chunk can be better explained in terms of maximum range limit instead of maximum array size because you have always have arrays larger than max range and map multiple array elements to a single work-item.
Moreover, this piece of text seems like a better fit in the below section where semantic rules are explained.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have restructured the section. Hopefully, it reads better now.

@diptorupd diptorupd force-pushed the docs/programming_model branch 3 times, most recently from 86636d9 to 02523ca Compare March 24, 2024 05:13
@diptorupd diptorupd marked this pull request as ready for review March 24, 2024 05:13
@diptorupd
Copy link
Contributor Author

@adarshyoga can you please give the Kernel programming guide a read once more. I have updated the all the section except the Advanced Concepts. I will fill in the Advanced Concepts in a separate PR.

@diptorupd diptorupd requested a review from adarshyoga March 24, 2024 05:51
@diptorupd diptorupd force-pushed the docs/programming_model branch 2 times, most recently from 7c6906a to b189e38 Compare March 25, 2024 01:03
@diptorupd diptorupd force-pushed the docs/programming_model branch from b189e38 to f82360b Compare March 27, 2024 17:50
@diptorupd diptorupd enabled auto-merge March 27, 2024 17:52
@diptorupd diptorupd merged commit 8e3b63d into main Mar 27, 2024
57 of 65 checks passed
@diptorupd diptorupd deleted the docs/programming_model branch March 27, 2024 22:30
Copy link
Contributor

Documentation preview removed.

github-actions bot added a commit that referenced this pull request Mar 27, 2024
[Documentation] Programming Model, Kernel Programming guide 8e3b63d
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Deprecation warning for examples in documentation
2 participants