futhark-csopencl¶
SYNOPSIS¶
futhark-csopencl [-V] [-o outfile] infile
DESCRIPTION¶
futhark-csopencl
translates a Futhark program to C# code invoking
OpenCL kernels, and either compiles that C# code with the Roslyn C# Compiler csc
to an executable binary program, or produces a .dll
file that can be linked with
other code.. The standard Futhark optimisation pipeline is used, and
csc
is invoked with -lib:$MONO_PATH
, -r:Cloo.clSharp.dll
,
-r:Mono.Options.dll
, and /unsafe
.
The resulting program will otherwise behave exactly as
one compiled with futhark-cs
.
OPTIONS¶
-o outfile | Where to write the result. If the source program is named ‘foo.fut’, this defaults to ‘foo’. |
--library | Generate a library instead of an executable. Appends .c /.h
to the name indicated by the -o option to determine output
file names. |
-v verbose | Enable debugging output. If compilation fails due to a compiler error, the result of the last successful compiler step will be printed to standard error. |
-h | Print help text to standard output and exit. |
-V | Print version information on standard output and exit. |
REQUIREMENTS¶
futhark-csopencl
uses the Mono implementation of the .NET framework.
To compile and execute the compiled binaries/libraries, you must have the MONO_PATH
environment variable defined. MONO_PATH
must be set to a directory containing the Mono.Options
and Cloo.clSharp
dll’s.
Mono.Options is available on https://www.nuget.org/packages/Mono.Options/5.3.0.1
Cloo.clSharp is available on https://www.nuget.org/packages/Cloo.clSharp/
SEE ALSO¶
futharki(1), futhark-test(1), futhark-cs(1)