Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1324438 - pocl builds fine and testsuite passes also on armv7hl
Summary: pocl builds fine and testsuite passes also on armv7hl
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: pocl
Version: rawhide
Hardware: armv7hl
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Fabian Deutsch
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-04-06 10:44 UTC by Dominik 'Rathann' Mierzejewski
Modified: 2016-04-11 09:11 UTC (History)
3 users (show)

Fixed In Version: pocl-0.13-4.fc24
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-04-11 09:11:45 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Dominik 'Rathann' Mierzejewski 2016-04-06 10:44:47 UTC
Description of problem:
pocl.spec contains

# Only armv7l is supported
# PPC support is currently broken, due to path problems
# s390(x) and aarch64 also not supported, so use ExclusiveArch
ExclusiveArch:  %{ix86} x86_64

without any upstream reference. I ran scratch builds of latest rawhide build 0.13-2.fc25 for armv7hl[1], aarch64[2], ppc64[3], ppc64le[4] and s390(x)[5].

pocl's CMakeLists.txt doesn't seem to know what to do on non-x86 arches with -DKERNELLIB_HOST_CPU_VARIANTS=distro, so I modified the spec a little:
--- pocl.spec.orig	2016-04-06 11:17:32.820212382 +0200
+++ pocl.spec	2016-04-06 11:34:19.705471171 +0200
@@ -16,7 +16,7 @@
 # Only armv7l is supported
 # PPC support is currently broken, due to path problems
 # s390(x) and aarch64 also not supported, so use ExclusiveArch
-ExclusiveArch:  %{ix86} x86_64
+#ExclusiveArch:  %{ix86} x86_64
 
 BuildRequires:  cmake
 BuildRequires:  clang clang-devel
@@ -87,7 +87,9 @@
   %cmake ../ \
     -DENABLE_ICD=1 \
     -DEXTRA_KERNEL_CXX_FLAGS="%{optflags} -std=c++11" \
+%ifarch i686 x86_64
     -DKERNELLIB_HOST_CPU_VARIANTS=distro
+%endif
     # -DENABLE_TESTSUITES=all Requires clBLAS
   %make_build
 popd

Of course, that should be improved in the upstream build system, so that we can pass -DKERNELLIB_HOST_CPU_VARIANTS=distro on all arches. Here are the results:

armv7hl builds and tests pass:
100% tests passed, 0 tests failed out of 108
Label Time Summary:
Einstein      = 133.71 sec (1 test)
hsa           =  12.69 sec (3 tests)
internal      = 959.38 sec (95 tests)
kernel        = 525.98 sec (20 tests)
regression    = 142.42 sec (33 tests)
runtime       =  42.00 sec (16 tests)
spir          =   2.55 sec (1 test)
tce           = 155.10 sec (36 tests)
workgroup     =  85.36 sec (18 tests)
Total Test time (real) = 1506.66 sec

aarch64 seems to have a build system problem that makes it pass -march=(unknown) to clang:
[...]
clang-3.8: error: the clang compiler does not support '-march=(unknown)'
[...]

ppc64 builds fine, but:
[...]
41% tests passed, 64 tests failed out of 108.
[...]

ppc64le fails with compilation errors.

The s390(x) clang build still seems to be suffering from bug 1309055.

Please remove ExclusiveArch: from the spec, replace it with:
ExcludeArch: aarch64 ppc64 ppc64le s390 s390x
for the time being, and fix/file bug reports as appropriate. I believe at least the aarch64 issue can be fixed easily. The ppc64(le) should be fixable as well, given that llvm supports these targets. Please let me know if you need any help.

Version-Release number of selected component (if applicable):
0.13-2.fc25

Additional information:
[1] http://koji.fedoraproject.org/koji/taskinfo?taskID=13573295
[2] http://arm.koji.fedoraproject.org/koji/taskinfo?taskID=3490371
[3] http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=3281474
[4] http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=3281475
[5] http://s390.koji.fedoraproject.org/koji/taskinfo?taskID=2176966

Comment 1 Fedora Update System 2016-04-08 15:45:35 UTC
pocl-0.13-3.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-9fa31fd9f3

Comment 2 Fedora Update System 2016-04-08 16:37:47 UTC
pocl-0.13-4.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-9fa31fd9f3

Comment 3 Fedora Update System 2016-04-09 18:52:14 UTC
mesa-11.2.0-0.devel.13.24ea81a.fc24, ocl-icd-2.2.8-3.git20151217.0122332.fc24, pocl-0.13-4.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-9fa31fd9f3

Comment 4 Fedora Update System 2016-04-11 09:11:20 UTC
mesa-11.2.0-0.devel.13.24ea81a.fc24, ocl-icd-2.2.8-3.git20151217.0122332.fc24, pocl-0.13-4.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.