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

[ language, 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

Versions [RSS] [faq] 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
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 (>=7.0.1 && <8.0.0), mtl (>=2.2.1), neat-interpolation (>=0.3), 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-01-02T19:52:07Z
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 2019-12-16T11:03:46Z
Distributions NixOS:0.19.4
Executables futhark
Downloads 14024 total (551 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs not available [build log]
All reported builds failed as of 2019-12-16 [all 3 reports]

Modules

  • 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

For package maintainers and hackage trustees

Candidates