runcl

A minimal OpenCL harness for rendering images
git clone git://pollux.codes/git/runcl.git
Log | Files | Refs | README | LICENSE

commit 31633442aee54672e42f64bafd06bea5aba4c03b
parent bd9f46c38a1ac33ff21e527432bb270971415b59
Author: Pollux <pollux@pollux.codes>
Date:   Sun, 19 Jan 2025 09:32:46 -0600

docs: clean up README.md

Signed-off-by: Pollux <pollux@pollux.codes>

Diffstat:
MREADME.md | 34+++++++++++++++++++++-------------
1 file changed, 21 insertions(+), 13 deletions(-)

diff --git a/README.md b/README.md @@ -1,12 +1,14 @@ -# runcl - A simple OpenCL harness for rendering images +# runcl `runcl` is a minimal OpenCL harness allowing image generation on the GPU by -means of executing an OpenCL file to generate the image raster data. +means of executing an OpenCL file to compute the raster data. -`runcl` depends on `libpng` and `libopencl`. +`runcl` depends on `libpng` and `libOpenCL`. The former should be +installed on most UNIX systems. Check your system's documentation for +instructions on how to install the latter. -`runcl` was designed to generate fractal art, a few examples of which can be -found at <https://pollux.codes/art>. +`runcl` was originally created to generate fractal art. A few examples of +fractal art I created with it can be found at <https://pollux.codes/art>. ## Installation @@ -15,23 +17,29 @@ make sudo make install ``` +To create a debug build, run `make debug` instead of `make`. + ## Usage The arguments of `runcl` are mostly self-explanatory: + ```sh -runcl -p <platform-index> -w <image-width> -h <image-height> input-opencl-file output-png-file +runcl \ + -p <platform-index> \ + -w <image-width> \ + -h <image-height> \ + input-opencl-file \ + output-png-file ``` -Use `clinfo` to see platform information, by default the platform with index 0 +Use `clinfo` to see platform information. By default the platform with index 0 is chosen. -## CL File Requirements - -In order for runcl to work, the OpenCL file used must meet the following -requirements: +## OpenCL File Requirements -- Kernel named 'render' -- Arguments 'const int width', 'const int height', and '__global float *out' +In order for `runcl` to work, the OpenCL file used must have a kernel named +`render` with three arguments, `const int width`, `const int height`, and +`__global float *out`. See the `example.cl` file for a demonstration of these requirements, as well as the suggested way of using the arguments.