An Interface for Embedding the BLAS in Haskell

dc.contributor.advisorNorris, Boyana
dc.contributor.authorNdemeye, Bosco
dc.date.accessioned2020-12-08T15:49:05Z
dc.date.available2020-12-08T15:49:05Z
dc.date.issued2020-12-08
dc.description.abstractScientific algorithms have been built on top of linear algebra subprograms, historically implemented in languages such as C/C++ or Fortran, to optimize their performance, sometimes at the cost of their conciseness. Recent work in these languages has sought to address the problem of optimizing the implementations of the subprograms through the use of domain-specific languages (DSLs). However, it has been shown that using various techniques such as fusion, concise yet optimal implementations of array computation DSLs in functional languages ---such as Haskell--- are possible. Consequently, we investigate an interface to a library that supports subprogram computations in Haskell. We apply the "delayed fusion" technique to separate data stored in memory and their delayed versions, providing the user with the option to force computation as they deem fit. We present implementations of several subprograms, abstracting over the choice of data sparsity layouts in memory.en_US
dc.identifier.urihttps://hdl.handle.net/1794/25909
dc.language.isoen_US
dc.publisherUniversity of Oregon
dc.rightsAll Rights Reserved.
dc.subjectblasen_US
dc.subjectdomain specific languagesen_US
dc.subjectfunctional programmingen_US
dc.subjectindexed typesen_US
dc.subjectlinear algebraen_US
dc.titleAn Interface for Embedding the BLAS in Haskell
dc.typeElectronic Thesis or Dissertation
thesis.degree.disciplineDepartment of Computer and Information Science
thesis.degree.grantorUniversity of Oregon
thesis.degree.levelmasters
thesis.degree.nameM.S.

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Ndemeye_oregon_0171N_12877.pdf
Size:
767.31 KB
Format:
Adobe Portable Document Format