(Publish.) |
|||
Line 24: | Line 24: | ||
== Summary == | == Summary == | ||
<!-- A sentence or two summarizing what this change is and what it will do. This information is used for the overall changeset summary page for each release. --> | <!-- A sentence or two summarizing what this change is and what it will do. This information is used for the overall changeset summary page for each release. --> | ||
This change will bring basic OpenCL support to Fedora to support the development of OpenCL enabled software and the development of OpenCL implementations itself. | This change will bring basic OpenCL support to Fedora to support the development of OpenCL enabled software and the development of OpenCL implementations itself. The change includes enabling Mesa's OpenCL state-tracker (in 9.3 with ICD support), packaging pocl - an CPU only OpenCL implementation - and the introduction of several other OpenCL related packages. | ||
== Owner == | == Owner == | ||
Line 74: | Line 74: | ||
** [http://viennacl.sourceforge.net/ Package ViennaCL] - A math library whcih can utilize CPU (OpenMP) and GPU (OpenCL/CUDA) '''WIP''' | ** [http://viennacl.sourceforge.net/ Package ViennaCL] - A math library whcih can utilize CPU (OpenMP) and GPU (OpenCL/CUDA) '''WIP''' | ||
** [https://pypi.python.org/pypi/pyopencl Package pyopencl] - A python library for accessing OpenCL '''BLOCKED BY [https://bugzilla.redhat.com/show_bug.cgi?id=1002898 rhbz #1002898]''' | ** [https://pypi.python.org/pypi/pyopencl Package pyopencl] - A python library for accessing OpenCL '''BLOCKED BY [https://bugzilla.redhat.com/show_bug.cgi?id=1002898 rhbz #1002898]''' | ||
** [http://code.google.com/p/ocltoys/ Package ocltoys] - A couple of OpenCL examples for testing '''NEW''' | |||
* Update existing packages if needed | * Update existing packages if needed | ||
Line 81: | Line 82: | ||
* Potential projects to be packaged: | * Potential projects to be packaged: | ||
** Package khronos icd - probably not | ** Package khronos icd - probably not | ||
** Package radeontop - To monitor a Radeon GPU (which supports OpenCL) | ** [https://github.com/clbr/radeontop Package radeontop] - To monitor a Radeon GPU (which supports OpenCL) | ||
** Package piglit - This will be a testuite for the OpenCL implementations | ** Package piglit - This will be a testuite for the OpenCL implementations, has some non-fedora deps | ||
* Other stuff: | * Other stuff: | ||
Line 182: | Line 183: | ||
--> | --> | ||
[[Category: | [[Category:ChangeReadyForWrangler]] | ||
<!-- When your change proposal page is completed and ready for review and announcement --> | <!-- When your change proposal page is completed and ready for review and announcement --> | ||
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler --> | <!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler --> |
Revision as of 21:25, 5 November 2013
Change Proposal Name OpenCL
Summary
This change will bring basic OpenCL support to Fedora to support the development of OpenCL enabled software and the development of OpenCL implementations itself. The change includes enabling Mesa's OpenCL state-tracker (in 9.3 with ICD support), packaging pocl - an CPU only OpenCL implementation - and the introduction of several other OpenCL related packages.
Owner
- Name: Fabian Deutsch
- Email: fabiand@fedoraproject.org
- Release notes owner:
Current status
- Targeted release: Fedora 21
- Last updated: 2013-09-23
- Tracker bug: <will be assigned by the Wrangler>
Detailed Description
The change is intended to give developers a starting point to be able to use OpenCL and to improve existing OpenCL implementations.
The change will include the following sub changes:
- Add OpenCL implementations
- Enable OpenCL state-tracker in Mesa NEW
- Package pocl - CPU-only OpenCL implementation DONE
- Package beignet - Intel Ivy Bridge 1 only
- Package implementation dependencies:
- Package libclc - needed by Mesa's state-tracker DONE
- Fix OpenCL path owenrship - Who owns /etc/OpenCL DONE
- Review Request: opencl-filesystem - OpenCL filesystem layout - A package owning shared paths DONE
- Package related packages
- Review Request: gocl - GLib/GObject based library for OpenCL - glib based OpenCL library DONE
- Review Request: clinfo - Enumerate OpenCL platforms and devices - A tool to query informations about the available OpenCL platforms DONE
- Review Request: erlang-cl - OpenCL binding for Erlang DONE
- Package ViennaCL - A math library whcih can utilize CPU (OpenMP) and GPU (OpenCL/CUDA) WIP
- Package pyopencl - A python library for accessing OpenCL BLOCKED BY rhbz #1002898
- Package ocltoys - A couple of OpenCL examples for testing NEW
- Update existing packages if needed
- gegl (to be investigated)
- ocl-icd (done)
- Potential projects to be packaged:
- Package khronos icd - probably not
- Package radeontop - To monitor a Radeon GPU (which supports OpenCL)
- Package piglit - This will be a testuite for the OpenCL implementations, has some non-fedora deps
- Other stuff:
- Add a new group to comps or a opencl-dev package?
- Add virtual provides to the opencl implementations - So a app requireing opencl just needs to require the virtual package (so any provider)
- Version opencl-headers
Benefit to Fedora
Developers will have an easier start to develop OpenCL based software on Fedora. Furthermore this shall be seen as a step o bring OpenCL based software to Linux in general.
Scope
- Proposal owners: Mainly packaging
- Other developers: N/A (not a System Wide Change)
- Release engineering: N/A (not a System Wide Change)
- Policies and guidelines: N/A (not a System Wide Change)
Upgrade/compatibility impact
This is a pure enhancements, so nothing should break.
N/A (not a System Wide Change)
How To Test
Basic
- Install
clinfo
- Run
clinfo
- Informations about supported opencl devices should appear
CPU-Only
Testing can be done on any CPU suported by pocl (x86_64, for now)
- Install
ocltoys
- Run
./smallptgpu -o CPU
- An image should appear slowly (or very slowly on slow machines)
GPU-Only
Testing can be done on AMD/ATI GPUs (r600)
- Install
ocltoys
andmesa-opencl
(TBD) - Run
./smallptgpu -o GPU
- An image should appear
User Experience
N/A (not a System Wide Change)
Dependencies
N/A (not a System Wide Change)
Contingency Plan
- Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
- Contingency deadline: N/A (not a System Wide Change)
- Blocks release? N/A (not a System Wide Change), Yes/No
Documentation
N/A (not a System Wide Change)