-
Notifications
You must be signed in to change notification settings - Fork 30
Implementation of DPCTLQueue_Fill8/16/32/64/128 function to SyclInterface library #831
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
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
View rendered docs @ https://intelpython.github.io/dpctl/pulls/831/index.html |
8849327
to
1bd2b29
Compare
Also added tests and docstrings.
…nce HTMLs are not used for CI coverage collection
Whenever C++ source code contains device code, DPC++ would perform two compilation passes (for host and for device portions) and combine these two into fat object file. In the process of doing this it generates temporary integration headers. So functions from these headers get instrumented and .lcov file would contain references to deleted header files, in the form of /tmp/dpctl_sycl_queue_integrface-header-hex.h Added -save-temps instructs DPC++ to keep all the temporaries around and makes these headers available for llvm-profdata and llvm-cov to use. The side-effect of using -save-temps=obj is that preprocessor output files are also kept around and referenced by instrumentation tools. These files are very large. So much so that generated .json file can not be uploaded to coverall service. Therefore the -save-temps=obj is commented out. May still be useful for manual profile collection. References to deleted header files are still present (and wreck llvm-lcov calls), but that can be addressed using llvm-cov option to ignore certain files (like /tmp/dpctl_*.h)
Since addition of --save-temps=obj, a slew of host/device object files were added and llvm-cov can not work with some of them. Since binaries can actually be shared objects, use that instead. Process traces for libtensor and libsyclinterface shared objects
This is until we have GEMM implemented in dpctl
…o deleted integration headers
1bd2b29
to
d975549
Compare
Deleted rendered PR docs from intelpython.github.com/dpctl, latest should be updated shortly. 🤞 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Also added tests and docstrings.
All functions except
DPCTLQueue_Fill128
take unsigned integers of the corresponding width. TheDPCTLQueue_Fill128
takes auint64_t *v
. The caller must ensure thatv[0]
andv[1]
can be accessed. Fill128 populates memory withstruct uint128_t {uint64_t v[0], uint64_t v[1]}
.