-
Notifications
You must be signed in to change notification settings - Fork 768
[SYCL][DOC] Add Extension for FPGA task_sequence #6348
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
Conversation
Create sycl_ext_intel_fpga_task_sequence.asciidoc
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
Co-authored-by: Steffen Larsen <[email protected]> Co-authored-by: GarveyJoe <[email protected]>
Update response_capacity property definition. Remove 'single task' language from forward progress section.
Update properties, fixes to task_sequence class def.
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
- Add other property type traits - Mention full name in overview, add note for short name - change struct task_sequence to class task_sequence - add note about pipelined property
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please start with a commented compelling code sample before diving into the details of the API.
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
Yup I have a unaddressed comment I filed on that. I will add some code samples in the next update :) |
1. Fix link to kernel properties 2. Clarify effect of multiple async calls 3. Fix Backend Support Status section 4. methods -> member function 5. Correct section that talks about applying property to task_sequence
ping @steffenlarsen , please take another look. Thank you! :) |
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
…fpga_cluster kernel property (#12453) Implement task_sequence header, task_sequence properties, and fpga_cluster kernel property according to the spec updates #6348 (almost ready to be merged) Header - Refactor invocation and response capacity to be on the Create intrinsic, so Async and Get do not take in respective argument - Remove max_outstanding argument of Create intrinsic - Add pipelined and fpga_cluster arguments to Create intrinsic - Async, Get, and Release intrinsic now accept the TargetExtType target("spirv.TaskSequenceINTEL") returned from the Create intrinsic, and do not take in object pointer or task function pointer arguments - Task Sequence accepts properties Task Sequence Properties - Convert invocation and response capacity from template parameters to properties - Add balanced property to remove Get intrinsic loop in destructor FPGA Kernel properties - Add fpga_cluster property - Support fpga_cluster and pipelined property for task sequence
sycl/doc/extensions/proposed/sycl_ext_intel_fpga_kernel_interface_properties.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/proposed/sycl_ext_intel_fpga_kernel_interface_properties.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/proposed/sycl_ext_intel_fpga_kernel_interface_properties.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/proposed/sycl_ext_intel_fpga_kernel_interface_properties.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/proposed/sycl_ext_intel_fpga_kernel_interface_properties.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/experimental/sycl_ext_intel_fpga_task_sequence.asciidoc
Outdated
Show resolved
Hide resolved
…ence.asciidoc Co-authored-by: Joe Garvey <[email protected]>
…ence.asciidoc Co-authored-by: Joe Garvey <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it looks good, but I want to resolve the topics we discussed offline, specifically whether we should remove the feature test macro from the existing code and move it to proposed, until the open issues are resolved and we can consider it supported in intel/llvm.
@steffenlarsen I have moved the extension to proposed. As for the issue regarding the test macro, the definition of the macro in intel/llvm will be removed once I roll back the change that introduced it a few months ago (#12453). As such, the definition of the macro as described in this spec will be viable as no product has shipped with the macro definition. Once the spec is finalized and checked in, and we are ready to re-apply the headers change I will put the macro definition back in and move the spec to experimental. Let me know if you have any other concerns. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sounds good to me. 👍
This PR:
task_sequences
which provides a sub kernel task level parallelism interface.stall_enable_clusters
andstall_free_clusters
properties. These are used with task sequences as well.