FUTHARK-ISPC(1)

NAME
futhark-ispc - compile Futhark to multithreaded ISPC

SYNOPSIS

futhark ispc [options...] <program.fut>

DESCRIPTION

futhark ispc translates a Futhark program to a combination of C and ISPC code, with ISPC used for parallel loops. It otherwise operates similarly to futhark-multicore. You need to have ispc on your PATH.

OPTIONS

Accepts the same options as futhark-multicore.

ENVIRONMENT VARIABLES

CC
        The C compiler used to compile the program. Defaults to cc if unset.

CFLAGS
        Space-separated list of options passed to the C compiler. Defaults to -O3 -std=c99 -pthread if unset.

ISPCFLAGS
        Space-separated list of options passed to ispc. Defaults to -O3 --woff if unset.

EXECUTABLE OPTIONS

Generated executables accept the same options as those generated by futhark-multicore.

LIBRARY USAGE

When compiling a program foo.fut with futhark ispc --library, a foo.kernels.ispc file is produced that must be compiled with ispc and linked with the final program. For example:

            $ ispc -o foo.kernels.o foo.kernels.ispc --addressing=64 --pic --woff -O3

BUGS

Currently works only on Unix-like systems because of a dependency on pthreads. Adding support for Windows would likely not be difficult.

SEE ALSO

futhark-multicore, futhark-test

COPYRIGHT
2013-2020, DIKU, University of Copenhagen