futhark: An optimising compiler for a functional, array-oriented language.

[ futhark, library, program ] [ Propose Tags ]

Futhark is a small programming language designed to be compiled to efficient parallel code. It is a statically typed, data-parallel, and purely functional array language in the ML family, and comes with a heavily optimising ahead-of-time compiler that presently generates GPU code via CUDA and OpenCL, although the language itself is hardware-agnostic.

For more information, see the website at https://futhark-lang.org

Modules

[Last Documentation]

  • Futhark
    • Futhark.Actions
    • Analysis
      • Futhark.Analysis.AlgSimplify
      • Futhark.Analysis.Alias
      • Futhark.Analysis.CallGraph
      • Futhark.Analysis.DataDependencies
      • HORepresentation
        • Futhark.Analysis.HORepresentation.MapNest
        • Futhark.Analysis.HORepresentation.SOAC
      • Futhark.Analysis.Metrics
      • Futhark.Analysis.PrimExp
        • Futhark.Analysis.PrimExp.Convert
        • Futhark.Analysis.PrimExp.Simplify
      • Futhark.Analysis.Range
      • Futhark.Analysis.Rephrase
      • Futhark.Analysis.ScalExp
      • Futhark.Analysis.SymbolTable
      • Futhark.Analysis.Usage
      • Futhark.Analysis.UsageTable
    • Futhark.Bench
    • Futhark.Binder
      • Futhark.Binder.Class
    • CLI
      • Futhark.CLI.Autotune
      • Futhark.CLI.Bench
      • Futhark.CLI.C
      • Futhark.CLI.CSOpenCL
      • Futhark.CLI.CSharp
      • Futhark.CLI.CUDA
      • Futhark.CLI.Datacmp
      • Futhark.CLI.Dataset
      • Futhark.CLI.Dev
      • Futhark.CLI.Doc
      • Futhark.CLI.Misc
      • Futhark.CLI.OpenCL
      • Futhark.CLI.Pkg
      • Futhark.CLI.PyOpenCL
      • Futhark.CLI.Python
      • Futhark.CLI.Query
      • Futhark.CLI.REPL
      • Futhark.CLI.Run
      • Futhark.CLI.Test
    • CodeGen
      • Backends
        • Futhark.CodeGen.Backends.CCUDA
          • Futhark.CodeGen.Backends.CCUDA.Boilerplate
        • Futhark.CodeGen.Backends.COpenCL
          • Futhark.CodeGen.Backends.COpenCL.Boilerplate
        • Futhark.CodeGen.Backends.CSOpenCL
          • Futhark.CodeGen.Backends.CSOpenCL.Boilerplate
        • Futhark.CodeGen.Backends.GenericC
          • Futhark.CodeGen.Backends.GenericC.Options
        • Futhark.CodeGen.Backends.GenericCSharp
          • Futhark.CodeGen.Backends.GenericCSharp.AST
          • Futhark.CodeGen.Backends.GenericCSharp.Definitions
          • Futhark.CodeGen.Backends.GenericCSharp.Options
        • Futhark.CodeGen.Backends.GenericPython
          • Futhark.CodeGen.Backends.GenericPython.AST
          • Futhark.CodeGen.Backends.GenericPython.Definitions
          • Futhark.CodeGen.Backends.GenericPython.Options
        • Futhark.CodeGen.Backends.PyOpenCL
          • Futhark.CodeGen.Backends.PyOpenCL.Boilerplate
        • Futhark.CodeGen.Backends.SequentialC
        • Futhark.CodeGen.Backends.SequentialCSharp
        • Futhark.CodeGen.Backends.SequentialPython
        • Futhark.CodeGen.Backends.SimpleRepresentation
      • Futhark.CodeGen.ImpCode
        • Futhark.CodeGen.ImpCode.Kernels
        • Futhark.CodeGen.ImpCode.OpenCL
        • Futhark.CodeGen.ImpCode.Sequential
      • Futhark.CodeGen.ImpGen
        • Futhark.CodeGen.ImpGen.CUDA
        • Futhark.CodeGen.ImpGen.Kernels
          • Futhark.CodeGen.ImpGen.Kernels.Base
          • Futhark.CodeGen.ImpGen.Kernels.SegHist
          • Futhark.CodeGen.ImpGen.Kernels.SegMap
          • Futhark.CodeGen.ImpGen.Kernels.SegRed
          • Futhark.CodeGen.ImpGen.Kernels.SegScan
          • Futhark.CodeGen.ImpGen.Kernels.ToOpenCL
          • Futhark.CodeGen.ImpGen.Kernels.Transpose
        • Futhark.CodeGen.ImpGen.OpenCL
        • Futhark.CodeGen.ImpGen.Sequential
      • OpenCL
        • Futhark.CodeGen.OpenCL.Heuristics
      • Futhark.CodeGen.SetDefaultSpace
    • Futhark.Compiler
      • Futhark.Compiler.CLI
      • Futhark.Compiler.Program
    • Futhark.Construct
    • Doc
      • Futhark.Doc.Generator
      • Futhark.Doc.Html
    • Futhark.Error
    • Futhark.FreshNames
    • Futhark.Internalise
      • Futhark.Internalise.AccurateSizes
      • Futhark.Internalise.Bindings
      • Futhark.Internalise.Defunctionalise
      • Futhark.Internalise.Defunctorise
      • Futhark.Internalise.Lambdas
      • Futhark.Internalise.Monad
      • Futhark.Internalise.Monomorphise
      • Futhark.Internalise.TypesValues
    • Futhark.MonadFreshNames
    • Optimise
      • Futhark.Optimise.CSE
      • Futhark.Optimise.DoubleBuffer
      • Futhark.Optimise.Fusion
        • Futhark.Optimise.Fusion.Composing
        • Futhark.Optimise.Fusion.LoopKernel
        • Futhark.Optimise.Fusion.TryFusion
      • Futhark.Optimise.InPlaceLowering
        • Futhark.Optimise.InPlaceLowering.LowerIntoStm
        • Futhark.Optimise.InPlaceLowering.SubstituteIndices
      • Futhark.Optimise.InliningDeadFun
      • Futhark.Optimise.Simplify
        • Futhark.Optimise.Simplify.ClosedForm
        • Futhark.Optimise.Simplify.Engine
        • Futhark.Optimise.Simplify.Lore
        • Futhark.Optimise.Simplify.Rule
        • Futhark.Optimise.Simplify.Rules
      • Futhark.Optimise.Sink
      • Futhark.Optimise.TileLoops
      • Futhark.Optimise.Unstream
    • Futhark.Pass
      • Futhark.Pass.ExpandAllocations
      • Futhark.Pass.ExplicitAllocations
      • Futhark.Pass.ExtractKernels
        • Futhark.Pass.ExtractKernels.BlockedKernel
        • Futhark.Pass.ExtractKernels.DistributeNests
        • Futhark.Pass.ExtractKernels.Distribution
        • Futhark.Pass.ExtractKernels.ISRWIM
        • Futhark.Pass.ExtractKernels.Interchange
        • Futhark.Pass.ExtractKernels.Intragroup
      • Futhark.Pass.FirstOrderTransform
      • Futhark.Pass.KernelBabysitting
      • Futhark.Pass.ResolveAssertions
      • Futhark.Pass.Simplify
    • Futhark.Passes
    • Futhark.Pipeline
    • Pkg
      • Futhark.Pkg.Info
      • Futhark.Pkg.Solve
      • Futhark.Pkg.Types
    • Representation
      • Futhark.Representation.AST
        • Futhark.Representation.AST.Annotations
        • Futhark.Representation.AST.Attributes
          • Futhark.Representation.AST.Attributes.Aliases
          • Futhark.Representation.AST.Attributes.Constants
          • Futhark.Representation.AST.Attributes.Names
          • Futhark.Representation.AST.Attributes.Patterns
          • Futhark.Representation.AST.Attributes.Ranges
          • Futhark.Representation.AST.Attributes.Rearrange
          • Futhark.Representation.AST.Attributes.Reshape
          • Futhark.Representation.AST.Attributes.Scope
          • Futhark.Representation.AST.Attributes.TypeOf
          • Futhark.Representation.AST.Attributes.Types
        • Futhark.Representation.AST.Pretty
        • Futhark.Representation.AST.RetType
        • Futhark.Representation.AST.Syntax
          • Futhark.Representation.AST.Syntax.Core
        • Futhark.Representation.AST.Traversals
      • Futhark.Representation.Aliases
      • Futhark.Representation.ExplicitMemory
        • Futhark.Representation.ExplicitMemory.IndexFunction
        • Futhark.Representation.ExplicitMemory.Simplify
      • Futhark.Representation.Kernels
        • Futhark.Representation.Kernels.Kernel
        • Futhark.Representation.Kernels.Simplify
        • Futhark.Representation.Kernels.Sizes
      • Futhark.Representation.Primitive
      • Futhark.Representation.Ranges
      • Futhark.Representation.SOACS
        • Futhark.Representation.SOACS.SOAC
        • Futhark.Representation.SOACS.Simplify
    • Futhark.Test
      • Futhark.Test.Values
    • Futhark.Tools
    • Transform
      • Futhark.Transform.CopyPropagate
      • Futhark.Transform.FirstOrderTransform
      • Futhark.Transform.Rename
      • Futhark.Transform.Substitute
    • Futhark.TypeCheck
    • Futhark.Util
      • Futhark.Util.IntegralExp
      • Futhark.Util.Log
      • Futhark.Util.Options
      • Futhark.Util.Pretty
      • Futhark.Util.Table
    • Futhark.Version
  • Language
    • Language.Futhark
      • Language.Futhark.Attributes
      • Language.Futhark.Core
      • Language.Futhark.Futlib
      • Language.Futhark.Interpreter
      • Language.Futhark.Parser
      • Language.Futhark.Pretty
      • Language.Futhark.Query
      • Language.Futhark.Semantic
      • Language.Futhark.Syntax
      • Language.Futhark.Traversals
      • Language.Futhark.TypeChecker
        • Language.Futhark.TypeChecker.Modules
        • Language.Futhark.TypeChecker.Monad
        • Language.Futhark.TypeChecker.Terms
        • Language.Futhark.TypeChecker.Types
        • Language.Futhark.TypeChecker.Unify
      • Language.Futhark.Warnings

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.7.3, 0.7.4, 0.8.1, 0.9.1, 0.10.1, 0.10.2, 0.11.1, 0.11.2, 0.12.1, 0.12.2, 0.12.3, 0.13.1, 0.13.2, 0.14.1, 0.15.1, 0.15.2, 0.15.3, 0.15.4, 0.15.5, 0.15.6, 0.15.7, 0.15.8, 0.16.1, 0.16.2, 0.16.3, 0.16.4, 0.17.1, 0.17.2, 0.17.3, 0.18.1, 0.18.2, 0.18.3, 0.18.4, 0.18.5, 0.18.6, 0.19.1, 0.19.2, 0.19.3, 0.19.4, 0.19.5, 0.19.6, 0.19.7, 0.20.1, 0.20.2, 0.20.3, 0.20.4, 0.20.5, 0.20.6, 0.20.7, 0.20.8, 0.21.1, 0.21.2, 0.21.3, 0.21.4, 0.21.5, 0.21.6, 0.21.7, 0.21.8, 0.21.9, 0.21.10, 0.21.11, 0.21.12, 0.21.13, 0.21.14, 0.21.15, 0.22.1, 0.22.2, 0.22.3, 0.22.4, 0.22.5, 0.22.6, 0.22.7, 0.23.1, 0.24.1, 0.24.2, 0.24.3, 0.25.1, 0.25.2, 0.25.3, 0.25.4, 0.25.5, 0.25.6, 0.25.7, 0.25.8, 0.25.9, 0.25.10, 0.25.11, 0.25.12, 0.25.13, 0.25.14, 0.25.15, 0.25.16, 0.25.17, 0.25.18, 0.25.19, 0.25.20, 0.25.21, 0.25.22, 0.25.23
Dependencies aeson (>=1.0.0.0), ansi-terminal (>=0.6.3.1), array (>=0.4), base (>=4.13 && <5), binary (>=0.8.3), blaze-html (>=0.9.0.1), bytestring (>=0.10.8), containers (>=0.6.2.1), data-binary-ieee754 (>=0.1), directory (>=1.3.0.0), directory-tree (>=0.12.1), dlist (>=0.6.0.1), file-embed (>=0.0.9), filepath (>=1.4.1.1), free (>=4.12.4), futhark, gitrev (>=1.2.0), haskeline, http-client (>=0.5.7.0), http-client-tls (>=0.3.5.1), http-conduit (>=2.2.4), language-c-quote (>=0.12), mainland-pretty (>=0.6.1), markdown (>=0.1.16), megaparsec (>=8.0.0), mtl (>=2.2.1), neat-interpolation (>=0.3 && <0.4), parallel (>=3.2.1.0), parser-combinators (>=1.0.0), process (>=1.4.3.0), process-extras (>=0.7.2), random, regex-tdfa (>=1.2), srcloc (>=0.4), template-haskell (>=2.11.1), temporary, terminal-size (>=0.3), text (>=1.2.2.2), time (>=1.6.0.1), transformers (>=0.3), unordered-containers (>=0.2.7), utf8-string (>=1), vector (>=0.12), vector-binary-instances (>=0.2.2.0), versions (>=3.3.1), zip-archive (>=0.3.1.1), zlib (>=0.6.1.2) [details]
License ISC
Author
Maintainer Troels Henriksen athas@sigkill.dk
Revised Revision 1 made by TroelsHenriksen at 2020-02-03T05:56:41Z
Category Language
Home page https://futhark-lang.org
Bug tracker https://github.com/diku-dk/futhark/issues
Source repo head: git clone https://github.com/diku-dk/futhark
Uploaded by TroelsHenriksen at 2020-01-24T13:37:37Z
Distributions NixOS:0.25.19
Reverse Dependencies 1 direct, 0 indirect [details]
Executables futhark
Downloads 28028 total (282 in the last 30 days)
Rating 2.25 (votes: 2) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2020-01-24 [all 3 reports]