From 36d900419b1cf5d9888278ca6dc4fdefd6af3ef62debda907015475c9f5ad46b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= Date: Wed, 20 Dec 2017 09:36:25 +0000 Subject: [PATCH] Accepting request 558673 from home:mnhauke:opencl:stable - Update to version 1.0 - Remove patch: * pocl-disable-tests.diff - Disable CUDA backend since it depends on CUDA_TOOLKIT which is not available in Factory old: science/pocl new: home:mnhauke:opencl:stable/pocl rev None Index: pocl.changes =================================================================== --- pocl.changes (revision 28) +++ pocl.changes (revision 9) @@ -1,4 +1,46 @@ ------------------------------------------------------------------- +Tue Dec 19 18:44:43 UTC 2017 - mardnh@gmx.de + +- Update to version 1.0 + Highlights + * Improved automatic local work-group sizing on kernel enqueue, taking + into account standard constraints, SIMD width for vectorization as + well as the number of compute units available on the device. + * Support for NVIDIA GPUs via a new CUDA backend (currently experimental). + * Removed support for BBVectorizer. + * LLVM 5.0 is now supported. + * A few build options have been added for distribution builds, + see README.packaging. + * Somewhat improved scalability in the CPU driver. CPUs with many cores + and programs using a lot of WIs with small kernels can run somewhat faster. + * Full conformance with OpenCL 1.2 standard, enabled by default. There are + some caveats though - see the documentation. + * When conformance is enabled, some kernel library functions might be + slower than in previous releases. + * Pocl now reports OpenCL 1.2 instead of 2.0, except HSA enabled builds. + * Updated format of pocl binaries, which is NOT backwards compatible. + * You'll need to clean any kernel caches. + * Fixed several memory leaks. + * Unresolved symbols (missing/misspelled functions etc) in a kernel will + result in error in clBuildProgram() instead of pocl silently ignoring + them and then aborting at dlopen(). + * New env variable POCL_MEMORY_LIMIT=N limits the Global memory size + reported by pocl to N gigabytes. + * New env variable POCL_AFFINITY (defaults to 0): if enabled, sets + the affinity of each CPU driver pthread to a single core. + * Improved AVX512 support (with LLVM 5.0). Note that even with LLVM 5.0 + there are still a few bugs (see pocl issue #555); AVX512 + LLVM 4.0 are + a lot more broken, and probably not worth trying. + * POCL_DEBUG env var has been revamped. You can now limit debuginfo to + these categories (or their combination): all,error,warning,general + memory,llvm,events,cache,locking,refcounts,timing,hsa,tce,cuda + * The old setting POCL_DEBUG=1 now equals error+warning+general. +- Remove patch: + * pocl-disable-tests.diff +- Disable CUDA backend since it depends on CUDA_TOOLKIT which is + not available in Factory + +------------------------------------------------------------------- Thu Oct 26 14:13:18 UTC 2017 - mpluskal@suse.com - Simplify spec file a bit Index: pocl.spec =================================================================== --- pocl.spec (revision 28) +++ pocl.spec (revision 9) @@ -17,9 +17,9 @@ # -%define sover 1.7.0 +%define sover 2.0.0 Name: pocl -Version: 0.14 +Version: 1.0 Release: 0 Summary: Portable Computing Language - an OpenCL implementation # The whole code is under MIT @@ -30,7 +30,6 @@ Url: http://portablecl.org/ Source0: http://portablecl.org/downloads/%{name}-%{version}.tar.gz Source99: pocl-rpmlintrc -Patch0: pocl-disable-tests.diff BuildRequires: clang BuildRequires: clang-devel BuildRequires: clang-devel-static @@ -84,12 +83,11 @@ %prep %setup -q -%patch0 -p1 %build %define __builder ninja %cmake \ - -DENABLE_CUDA=1 \ + -DENABLE_CUDA=0 \ -DENABLE_ICD=1 \ -DPOCL_INSTALL_ICD_VENDORDIR=%{_sysconfdir}/OpenCL/vendors \ -DCMAKE_C_COMPILER=clang \ @@ -124,9 +122,9 @@ %dir %{_sysconfdir}/OpenCL/vendors %{_sysconfdir}/OpenCL/vendors/pocl.icd %{_bindir}/poclcc -%{_libdir}/libpocl.so.1 +%{_libdir}/libpocl.so.2 %{_libdir}/libpocl.so.%{sover} -%{_libdir}/libpoclu.so.1 +%{_libdir}/libpoclu.so.2 %{_libdir}/libpoclu.so.%{sover} %{_libdir}/pocl/ %{_datadir}/pocl/ Index: pocl-1.0.tar.gz =================================================================== Binary file pocl-1.0.tar.gz (revision 9) added Index: pocl-0.14.tar.gz =================================================================== Binary file pocl-0.14.tar.gz (revision 28) deleted Index: pocl-disable-tests.diff =================================================================== --- pocl-disable-tests.diff (revision 28) +++ pocl-disable-tests.diff (deleted) @@ -1,19 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 18d36e7..3c20763 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1000,10 +1000,10 @@ message(STATUS "POCLU LINK OPTS: ${POCLU_LINK_OPTIONS}") - # poclcc bin - add_subdirectory("bin") - --if (OCS_AVAILABLE) -- add_subdirectory("tests") -- add_subdirectory("examples") --endif() -+#if (OCS_AVAILABLE) -+# add_subdirectory("tests") -+# add_subdirectory("examples") -+#endif() - - add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} ${COMMAND_USES_TERMINAL}) - OBS-URL: https://build.opensuse.org/request/show/558673 OBS-URL: https://build.opensuse.org/package/show/science/pocl?expand=0&rev=29 --- pocl-0.14.tar.gz | 3 --- pocl-1.0.tar.gz | 3 +++ pocl-disable-tests.diff | 19 ------------------- pocl.changes | 42 +++++++++++++++++++++++++++++++++++++++++ pocl.spec | 12 +++++------- 5 files changed, 50 insertions(+), 29 deletions(-) delete mode 100644 pocl-0.14.tar.gz create mode 100644 pocl-1.0.tar.gz delete mode 100644 pocl-disable-tests.diff diff --git a/pocl-0.14.tar.gz b/pocl-0.14.tar.gz deleted file mode 100644 index eab482c..0000000 --- a/pocl-0.14.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2127bf925a91fbbe3daf2f1bac0da5c8aceb16e2a9434977a3057eade974106a -size 1231630 diff --git a/pocl-1.0.tar.gz b/pocl-1.0.tar.gz new file mode 100644 index 0000000..5195a3f --- /dev/null +++ b/pocl-1.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94bd86a2f9847c03e6c3bf8dca12af3734f8b272ffeacbc3fa8fcca58844b1d4 +size 1536827 diff --git a/pocl-disable-tests.diff b/pocl-disable-tests.diff deleted file mode 100644 index ae594b1..0000000 --- a/pocl-disable-tests.diff +++ /dev/null @@ -1,19 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 18d36e7..3c20763 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1000,10 +1000,10 @@ message(STATUS "POCLU LINK OPTS: ${POCLU_LINK_OPTIONS}") - # poclcc bin - add_subdirectory("bin") - --if (OCS_AVAILABLE) -- add_subdirectory("tests") -- add_subdirectory("examples") --endif() -+#if (OCS_AVAILABLE) -+# add_subdirectory("tests") -+# add_subdirectory("examples") -+#endif() - - add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} ${COMMAND_USES_TERMINAL}) - diff --git a/pocl.changes b/pocl.changes index 0ab4cf1..dc4a033 100644 --- a/pocl.changes +++ b/pocl.changes @@ -1,3 +1,45 @@ +------------------------------------------------------------------- +Tue Dec 19 18:44:43 UTC 2017 - mardnh@gmx.de + +- Update to version 1.0 + Highlights + * Improved automatic local work-group sizing on kernel enqueue, taking + into account standard constraints, SIMD width for vectorization as + well as the number of compute units available on the device. + * Support for NVIDIA GPUs via a new CUDA backend (currently experimental). + * Removed support for BBVectorizer. + * LLVM 5.0 is now supported. + * A few build options have been added for distribution builds, + see README.packaging. + * Somewhat improved scalability in the CPU driver. CPUs with many cores + and programs using a lot of WIs with small kernels can run somewhat faster. + * Full conformance with OpenCL 1.2 standard, enabled by default. There are + some caveats though - see the documentation. + * When conformance is enabled, some kernel library functions might be + slower than in previous releases. + * Pocl now reports OpenCL 1.2 instead of 2.0, except HSA enabled builds. + * Updated format of pocl binaries, which is NOT backwards compatible. + * You'll need to clean any kernel caches. + * Fixed several memory leaks. + * Unresolved symbols (missing/misspelled functions etc) in a kernel will + result in error in clBuildProgram() instead of pocl silently ignoring + them and then aborting at dlopen(). + * New env variable POCL_MEMORY_LIMIT=N limits the Global memory size + reported by pocl to N gigabytes. + * New env variable POCL_AFFINITY (defaults to 0): if enabled, sets + the affinity of each CPU driver pthread to a single core. + * Improved AVX512 support (with LLVM 5.0). Note that even with LLVM 5.0 + there are still a few bugs (see pocl issue #555); AVX512 + LLVM 4.0 are + a lot more broken, and probably not worth trying. + * POCL_DEBUG env var has been revamped. You can now limit debuginfo to + these categories (or their combination): all,error,warning,general + memory,llvm,events,cache,locking,refcounts,timing,hsa,tce,cuda + * The old setting POCL_DEBUG=1 now equals error+warning+general. +- Remove patch: + * pocl-disable-tests.diff +- Disable CUDA backend since it depends on CUDA_TOOLKIT which is + not available in Factory + ------------------------------------------------------------------- Thu Oct 26 14:13:18 UTC 2017 - mpluskal@suse.com diff --git a/pocl.spec b/pocl.spec index caa0bf7..09a6050 100644 --- a/pocl.spec +++ b/pocl.spec @@ -17,9 +17,9 @@ # -%define sover 1.7.0 +%define sover 2.0.0 Name: pocl -Version: 0.14 +Version: 1.0 Release: 0 Summary: Portable Computing Language - an OpenCL implementation # The whole code is under MIT @@ -30,7 +30,6 @@ Group: Development/Tools/Other Url: http://portablecl.org/ Source0: http://portablecl.org/downloads/%{name}-%{version}.tar.gz Source99: pocl-rpmlintrc -Patch0: pocl-disable-tests.diff BuildRequires: clang BuildRequires: clang-devel BuildRequires: clang-devel-static @@ -84,12 +83,11 @@ This subpackage provides the development files needed for pocl. %prep %setup -q -%patch0 -p1 %build %define __builder ninja %cmake \ - -DENABLE_CUDA=1 \ + -DENABLE_CUDA=0 \ -DENABLE_ICD=1 \ -DPOCL_INSTALL_ICD_VENDORDIR=%{_sysconfdir}/OpenCL/vendors \ -DCMAKE_C_COMPILER=clang \ @@ -124,9 +122,9 @@ sed -i 's|%{_prefix}%{_prefix}/|%{_prefix}/|g' %{buildroot}%{_sysconfdir}/OpenCL %dir %{_sysconfdir}/OpenCL/vendors %{_sysconfdir}/OpenCL/vendors/pocl.icd %{_bindir}/poclcc -%{_libdir}/libpocl.so.1 +%{_libdir}/libpocl.so.2 %{_libdir}/libpocl.so.%{sover} -%{_libdir}/libpoclu.so.1 +%{_libdir}/libpoclu.so.2 %{_libdir}/libpoclu.so.%{sover} %{_libdir}/pocl/ %{_datadir}/pocl/