---
name: "futhark-multicore"
section: "1"
platform: "linux"
package: "futhark"
version: "0.25.27-1+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/futhark-multicore"
---

# futhark-multicore(1)

compile Futhark to multithreaded C

## NAME

futhark-multicore - compile Futhark to multithreaded C

## SYNOPSIS

futhark multicore \[options...\] \<program.fut\>

## DESCRIPTION

**futhark multicore** translates a Futhark program to multithreaded C code, and either compiles that C code with a C compiler to an executable binary program, or produces a **.h** and **.c** file that can be linked with other code.  The standard Futhark optimisation pipeline is used.

The resulting program will read the arguments to the entry point (**main** by default) from standard input and print its return value on standard output.  The arguments are read and printed in Futhark syntax.

## OPTIONS

Accepts the same options as *futhark-c*.

## 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.

## EXECUTABLE OPTIONS

Generated executables accept the same options as those generated by *futhark-c*.  The following additional options are accepted.

- **--num-threads=***INT*

  Use this many physical threads.

## 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-c*, *futhark-test*

## COPYRIGHT

2013-2020, DIKU, University of Copenhagen
