pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/parallel/pocl



Module Name:    pkgsrc
Committed By:   wiz
Date:           Sat Nov 20 20:05:37 UTC 2021

Modified Files:
        pkgsrc/parallel/pocl: Makefile distinfo
        pkgsrc/parallel/pocl/patches: patch-lib_CL_devices_devices.c
Removed Files:
        pkgsrc/parallel/pocl/patches: patch-CMakeLists.txt
            patch-config.h.in.cmake patch-lib_CL_devices_basic_basic.c
            patch-lib_CL_devices_common.c patch-lib_CL_devices_cpuinfo.c
            patch-lib_CL_devices_hsa_pocl-hsa.c
            patch-lib_CL_devices_pthread_pthread.c patch-lib_CL_pocl__timing.c

Log Message:
pocl: update to 1.8.

Notable User Facing Changes
---------------------------

- support for LLVM 13
- CMake: Inter-Procedural Optimization is enabled on code of runtime library
  (libpocl.so is compiled with -flto on systems that support it).
- LTTng tracing improved - more command types are traced, and also
  some synchronous API calls (like clCreateBuffer) are traced.
- poclcc, tests and examples can be disabled with CMake options
- Valgrind support improved by making Valgrind aware of pocl's
  reference counting of cl_* objects
- kernels which are called by kernels are now force-inlined
- Support for NetBSD.
- Support for Unix systems without libdl.
- PoCL can now (optionally) respond to SIGUSR2 by printing
  some live debug information.
- improved SPIR support for CUDA devices

Notable Bug Fixes
-----------------

- Fixed a potential crash on Unix systems without sysfs mounted.
- Fixed compilation errors when building on macOS.
  - Fixed POCL_FAST_INIT macro; POCL_INIT_LOCK must be invoked with only one argument.
  - Fix bin/poclcc to not depend on OpenCL 2.0 symbols
- Fixed miscompilation in kernel loops with multiple conditionals with barriers in them.

Other
-----
- Add cmake options PARALLEL_COMPILE_JOBS, PARALLEL_LINK_JOBS to
  use ninja's seperate compile and link job pools.

- Improve memory architecture, buffer migration and allocation.
  Buffers are now allocated on a device when first used
  (previously each buffer was allocated on every device in context).

- the single global LLVMContext was replaced with
  multiple LLVMContexts, one per OpenCL cl_context.
  OpenCL code can now be compiled in parallel
  when using separate cl_contexts. This feature
  is disabled by default since it significantly slowed
  down PyOpenCL. This should be resolved by separating
  LLVM compilation in their own threads in the future.

- a new OpenCL extension was added to PoCL: cl_pocl_content_size.
  The extension allows the user to give optimization hint to PoCL,
  which will be used internally by PoCL to optimize buffer transfers
  between multiple devices.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 pkgsrc/parallel/pocl/Makefile \
    pkgsrc/parallel/pocl/distinfo
cvs rdiff -u -r1.2 -r0 pkgsrc/parallel/pocl/patches/patch-CMakeLists.txt \
    pkgsrc/parallel/pocl/patches/patch-config.h.in.cmake \
    pkgsrc/parallel/pocl/patches/patch-lib_CL_devices_basic_basic.c \
    pkgsrc/parallel/pocl/patches/patch-lib_CL_devices_common.c \
    pkgsrc/parallel/pocl/patches/patch-lib_CL_devices_cpuinfo.c \
    pkgsrc/parallel/pocl/patches/patch-lib_CL_devices_hsa_pocl-hsa.c \
    pkgsrc/parallel/pocl/patches/patch-lib_CL_devices_pthread_pthread.c \
    pkgsrc/parallel/pocl/patches/patch-lib_CL_pocl__timing.c
cvs rdiff -u -r1.1 -r1.2 \
    pkgsrc/parallel/pocl/patches/patch-lib_CL_devices_devices.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/parallel/pocl/Makefile
diff -u pkgsrc/parallel/pocl/Makefile:1.5 pkgsrc/parallel/pocl/Makefile:1.6
--- pkgsrc/parallel/pocl/Makefile:1.5   Mon Sep 20 09:05:30 2021
+++ pkgsrc/parallel/pocl/Makefile       Sat Nov 20 20:05:36 2021
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.5 2021/09/20 09:05:30 nia Exp $
+# $NetBSD: Makefile,v 1.6 2021/11/20 20:05:36 wiz Exp $
 
-DISTNAME=      pocl-1.7
-PKGREVISION=   2
+DISTNAME=      pocl-1.8
 CATEGORIES=    parallel
 MASTER_SITES=  http://portablecl.org/downloads/
 
Index: pkgsrc/parallel/pocl/distinfo
diff -u pkgsrc/parallel/pocl/distinfo:1.5 pkgsrc/parallel/pocl/distinfo:1.6
--- pkgsrc/parallel/pocl/distinfo:1.5   Tue Oct 26 11:10:37 2021
+++ pkgsrc/parallel/pocl/distinfo       Sat Nov 20 20:05:36 2021
@@ -1,14 +1,6 @@
-$NetBSD: distinfo,v 1.5 2021/10/26 11:10:37 nia Exp $
+$NetBSD: distinfo,v 1.6 2021/11/20 20:05:36 wiz Exp $
 
-BLAKE2s (pocl-1.7.tar.gz) = b111e491fb84465f30bf56bb78c0bc05f1be26d7954c0891fda2e6990669e7cd
-SHA512 (pocl-1.7.tar.gz) = 23bb82b25a222186c001b2ed413f26253e1e0e16518e98c95173f51491e15d107e6ab1b334ffd490b41199743267d9ad64882a22fea327e17ec9604f9847fc38
-Size (pocl-1.7.tar.gz) = 1577676 bytes
-SHA1 (patch-CMakeLists.txt) = d722efb971d9ce35fd7dfe2e238cbce3660e1eb8
-SHA1 (patch-config.h.in.cmake) = 8f15bf68b3a2c2af00bc8b72f52b383182db6168
-SHA1 (patch-lib_CL_devices_basic_basic.c) = 0220af7515718d44eea38d3a14844c68f75acab4
-SHA1 (patch-lib_CL_devices_common.c) = 44717bf410b948f9b6cd72cbea83dd9214faaa5c
-SHA1 (patch-lib_CL_devices_cpuinfo.c) = 30d8a1103d9eef6fb5b89c1b604dd953828b605b
-SHA1 (patch-lib_CL_devices_devices.c) = 17a5bb001086befdf88452b7e1126d2f5f4b1fc1
-SHA1 (patch-lib_CL_devices_hsa_pocl-hsa.c) = 27acb108cb1e12e4ac0c82e497916f841edc8cb1
-SHA1 (patch-lib_CL_devices_pthread_pthread.c) = 9f169b9a0a1d70ef3efc52dcd7b47a70c364d5d2
-SHA1 (patch-lib_CL_pocl__timing.c) = 6f82ad0eaf22d511745b47bf26f3024f1a25cf6f
+BLAKE2s (pocl-1.8.tar.gz) = 98983933cf43c9010352ecc48a539bc068bc5d1fd6a2a0f37b2973d384a1e3e0
+SHA512 (pocl-1.8.tar.gz) = bcbb3fa3d2234d4c5b0c17863eba0bc4c8f13f863cc58cfd1de49e21fa7bf0aec82b81aec143c81885e3a39274c8ae783b2f03b9a12846e024204d6ed0e59a9d
+Size (pocl-1.8.tar.gz) = 1614545 bytes
+SHA1 (patch-lib_CL_devices_devices.c) = 59824f5f30083651cff47340be0895148836aee3

Index: pkgsrc/parallel/pocl/patches/patch-lib_CL_devices_devices.c
diff -u pkgsrc/parallel/pocl/patches/patch-lib_CL_devices_devices.c:1.1 pkgsrc/parallel/pocl/patches/patch-lib_CL_devices_devices.c:1.2
--- pkgsrc/parallel/pocl/patches/patch-lib_CL_devices_devices.c:1.1     Thu Jun 10 09:57:40 2021
+++ pkgsrc/parallel/pocl/patches/patch-lib_CL_devices_devices.c Sat Nov 20 20:05:37 2021
@@ -1,8 +1,8 @@
-$NetBSD: patch-lib_CL_devices_devices.c,v 1.1 2021/06/10 09:57:40 nia Exp $
+$NetBSD: patch-lib_CL_devices_devices.c,v 1.2 2021/11/20 20:05:37 wiz Exp $
 
 Add support for non-Linux unixes.
 
---- lib/CL/devices/devices.c.orig      2021-05-19 08:12:19.000000000 +0000
+--- lib/CL/devices/devices.c.orig      2021-10-12 14:33:15.000000000 +0000
 +++ lib/CL/devices/devices.c
 @@ -27,7 +27,7 @@
  #include <string.h>
@@ -13,54 +13,12 @@ Add support for non-Linux unixes.
  #include <limits.h>
  #include <signal.h>
  #include <stdio.h>
-@@ -70,7 +70,7 @@
- #define PATH_MAX 4096
+@@ -469,7 +469,7 @@ pocl_init_devices ()
  #endif
  
--#ifdef HAVE_LIBDL
-+#ifdef HAVE_DLFCN_H
- #if defined(__APPLE__)
- #define _DARWIN_C_SOURCE
- #endif
-@@ -303,7 +303,7 @@ str_toupper(char *out, const char *in)
-  */
  
- #ifdef ENABLE_HOST_CPU_DEVICES
 -#ifdef __linux__
 +#if !defined(_WIN32) && !defined(__APPLE__)
- #ifdef __x86_64__
- 
- #define DIV_OPCODE_SIZE 1
-@@ -335,7 +335,11 @@ sigfpe_signal_handler (int signo, siginf
- {
-   ucontext_t *uc;
-   uc = (ucontext_t *)data;
-+#ifdef __NetBSD__
-+  unsigned char *eip = (unsigned char *)(uc->uc_mcontext.__gregs[_REG_RIP]);
-+#else
-   unsigned char *eip = (unsigned char *)(uc->uc_mcontext.gregs[REG_RIP]);
-+#endif
- 
-   if ((signo == SIGFPE)
-       && ((si->si_code == FPE_INTDIV) || (si->si_code == FPE_INTOVF)))
-@@ -384,7 +388,11 @@ sigfpe_signal_handler (int signo, siginf
-             n += IP_RELATIVE_INDEXING;
-         }
- 
-+#ifdef __NetBSD__
-+      uc->uc_mcontext.__gregs[_REG_RIP] += n;
-+#else
-       uc->uc_mcontext.gregs[REG_RIP] += n;
-+#endif
-       return;
-     }
-   else
-@@ -546,7 +554,7 @@ pocl_init_devices ()
- 
  
  #ifdef ENABLE_HOST_CPU_DEVICES
--#ifdef __linux__
-+#if !defined(_WIN32) && !defined(__APPLE__)
- #ifdef __x86_64__
- 
    if (pocl_get_bool_option ("POCL_SIGFPE_HANDLER", 1))



Home | Main Index | Thread Index | Old Index