Results 1 to 3 of 3

Thread: barrier() crashes on Intel HD Graphics 630 + Apple OpenCL 1.2

  1. #1
    Junior Member
    Join Date
    Feb 2017
    Posts
    12

    barrier() crashes on Intel HD Graphics 630 + Apple OpenCL 1.2

    Simply adding the line "barrier(CLK_GLOBAL_MEM_FENCE);" to a function causes an error when run on Intel HD Graphics 630.
    - Without a printf the function takes a very long time to execute (~10 seconds) and does not appear to execute subsequent statements.
    - With a printf included the program will crash when flush() is called.
    However, on same system the function runs quickly an correctly on both the CPU and discrete GPU.

    Setup:
    macOS Sierra 10.12.6
    MacBookPro (15-inch, 2017)
    3.1 GHz Intel Core i7
    Intel HD Graphics 630
    Radeon Pro 560

    The same problem is encountered when calling barrier(CLK_LOCAL_MEM_FENCE).
    However, when calling an atomic (e.g. atomic_inc) the behavior is correct.

    Is there some special way I should be handling barrier() calls?

  2. #2
    Senior Member
    Join Date
    Dec 2011
    Posts
    244
    First rule is: All work items in the work group must hit the barrier() call.

  3. #3
    Junior Member
    Join Date
    Feb 2017
    Posts
    12
    @Dithermaster: all work items reach the barrier. Also, the same function with same inputs run to completion on the Intel CPU and on the AMD GPU. Only the integrated Intel GPU fails.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Proudly hosted by Digital Ocean