-
Notifications
You must be signed in to change notification settings - Fork 31
Update gold/2021 to 0.4.0 #193
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
PokhodenkoSA
merged 86 commits into
IntelPython:gold/2021
from
PokhodenkoSA:update-gold-2021-to-0.4.0
Dec 1, 2020
Merged
Update gold/2021 to 0.4.0 #193
PokhodenkoSA
merged 86 commits into
IntelPython:gold/2021
from
PokhodenkoSA:update-gold-2021-to-0.4.0
Dec 1, 2020
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
This GitHub Action checks that code in pull request is formatted with black. See https://black.readthedocs.io/en/stable/github_actions.html
versioneer.py is not a part of the project. Add pyproject.toml file with section [tool.black] and parameter exclude = 'versioneer.py'. This file will be used by developers and GitHub Actions for black. Usign pyproject.toml allows use black like this: `black .`
Use black version 20.8b1 or branch [stable](https://github.com/psf/black/tree/stable)). Command: black .
File .git-blame-ignore-revs contains a list of revisions to use for ignoring in blame. Example: $ git blame FILE --ignore-revs-file .git-blame-ignore-revs Also you can configure git to automatically ignore revisions listed in a file on every call to git blame: $ git config blame.ignoreRevsFile .git-blame-ignore-revs Requirements: Git >=2.23
Add black formatter for Python code
…t-queue-on-C-side dpctl.get_current_queue is now cimportable
* Del old ocl interface * Del cffi * Fix CMakeLists * Remove OpenCL from README.md * Update changelog Co-authored-by: etotmeni <elena.totmenina@intel.com> Co-authored-by: Sergey Pokhodenko <sergey.pokhodenko@intel.com>
1. Memory class exposes the interface 2. Memory variants constructors can consum objects exposing the said interface, and take over memory zero copy. 3. Class implements memInst.copy_to_host(pyobj=None) If `pyobj` supports Python's buffer protocol, content of USM memory in the instance is copied to the host buffer. Otherwise, bytearray is allocated, populated and returned memInst.copy_from_host(pyobj) Copies buffer of `pyobj` into USM memory of the instance. Raises exception if pyobj is not a byte array memInst.copy_from_device(sycl_usm_obj) Copies USM memory of sycl_usm_obj exposing __sycl_usm_array_interface__ into USM memory of the instance 4. Class is pickleable 5. Class implements tobytes method that produces bytes object populated by the content of USM memory. Methods are currently not releasing GIL, but I think they should.
modularized test, + changes per black
Previously it would always produced shared memory on unpickling.
queue can no longer be specified via positional argument, only through a keyword to allow a user to specify alignment but not queue. SYCL spec says that aligned allocation may return null pointer when the requested alignment is not supported by the device. Non-positive alignments silently go unused (i.e. DPPLmalloc_* is instead of DPPL_aligned_alloc_*)
Added DPPLDevice_AreEq to check if two devices are pointer equal. Used in the test.
* Add wrapper functions over device properties used inside Numba. * Add unit test cases for dppl_sycl_device_interface.cpp * change and fixes for existing funcs * Add device::aspects for int64_base_atomics and int64_extended_atomics * Fixes according comments * Fix tests * Codestyle * Codestyle * Some fixes + add tests for level0 gpu * Change names in tests level0gpu * Update changelog * Fix import _backend in _sycl_core.pxd Co-authored-by: Diptorup Deb <diptorup.deb@intel.com> Co-authored-by: etotmeni <elena.totmenina@intel.com> Co-authored-by: Sergey Pokhodenko <sergey.pokhodenko@intel.com>
* Change funcs to cpdef * Change funcs to cpdef Co-authored-by: etotmeni <elena.totmenina@intel.com> Co-authored-by: Sergey Pokhodenko <sergey.pokhodenko@intel.com>
…ro-copy Feature/memory zero copy
This PR fixes all the currently reported warnings for the libDPPLSyclInterface and suppresses tp_print related warnings when building the Cython module. * Enable warning flags to CXX_FLAGS. * Add __attribute__((unused)) to wrap/unwrap functions. -- Wrap/unwrap functions are imported using the same macro and both versions are not necessarily used in the same file. Adding this attribute prevents a flood of warning. * Remove unused variables. * Initialize before use. * Fix signed comparison warnings. * Some formatting changes. * fix warnings about comparing signed with unsigned * Remove option not known to MSVC. * Silence strncpy deprecation warning on Windows. * Suppress tp_print deprecation warning flood on Linux. * Update changelog.
1. Only source oneAPI compiler activation script if dpcpp.exe --version was not successful to avoid polluting env. variables 2. Script is responsive to USE_GTEST env. variable If it is undefined, GTEST portion will be skipped. To build without GTEST ``` set USE_GTEST= scripts\build_for_develop.bat ``` to build with GTEST: ``` set USE_GTEST=1 scripts\build_for_develop.bat ```
This comes up when building dpctl in environment prepped for build daal4py which has clang-tools installed which installes its own clang into python environment. We need DPCPP's clang.
Previously identified hang was due to bad driver.
…-develop-tweak Changes to build_for_develop.bat
* Remove whitespace. * Remove numpy and python look up in CMakeLists.txt
These are no longer required by CMake script
* Fixes to get cmake working on windows. * Update bld.bat
* use find_package for GTest and bump minimum CMake version. * Use new cmake google_discover_tests feature. * Use a common test runner and do not create separate executable for each test. * Remove extra new line. * Add a cmake option to build tests. * Use new option in windows build_for_develop as well. * Remove leftover code. * print output of tests only when there is a failure. * Fix typo. * Do not use relative paths. * fix indentation
…__init__-pxd fixed dpct/memory/__init__.pxd
* Adding the basic infrastructure to generate API docs for dpCtl. * Add missing doxygen doc-strings. * Various improvements to Python doc-strings and documentation. * Add Sphinx documentation for dpctl.memory.
Improved memory manager.
Vyacheslav-Smirnov
approved these changes
Dec 1, 2020
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.
Small conflicts in conda-recipe/bld.bat resolved.