Libmir Mir Versions Save

Mir (backports): Sparse tensors, Hoffman

v3.0.0

5 years ago

v2.0.0

5 years ago

v0.20.0

7 years ago

v0.18.0

7 years ago

Changes since v0.15.0

  • GLAS part 1 was added. This is generic BLAS implementation. Single thread for now.
    • GLAS Level 3 GEMM[1] and SYMM was added. It implements GEMM, SYMM and HEMM BLAS functionality. It is fully optimised. See also Mir GLAS vs OpenBLAS benchmark.
    • GLAS Level 1 was added. It contains full BLAS Level 1 api except rotg. It is partially optimised for now, but much faster then common loops.
    • Experimental GLAS Level 2 GEMV[2] was added. It implements (S/D)GEMV BLAS functionality. It is partially optimised for now, but faster then common loops.
  • Tinflex and discrete RNGs implementations was added. This is GSoC project by @wilzbach. See also the blog post.
  • A couple of new functions was added to ndslice.
  • ndslice.algorithm was added. It is partially optimised for now, but much faster then common loops.
  • Mir requires LDC compiler since this release. DMD is not supported anymore.
  • Mir organization is home for dcompute project by @thewilsonator. This project is designed to work with LDC to enable native execution of D on GPUs (and other more exotic targets of OpenCL).

[1] - general matrix-matrix multiplication. [1] - general matrix-vector multiplication.

v0.15.2

8 years ago

New packages

  • mir.sparse Sparse Tensors
    • Sparse - DOK format
    • Different ranges for COO format
    • CompressedTensor - CSR/CSC formats
  • mir.sparse.blas - Sparse BLAS for CompressedTensor
  • mir.blas - this is slow snail, it is for experiments with BLAS API. Don't use for now.
  • mir.model.lda.hoffman - Online variational Bayes for latent Dirichlet allocation (Online VB LDA) for sparse documents. LDA is used for topic modeling.

API Changes

  • mir.las.sum was moved to mir.sum.

Examples

  • lda_hoffman_sparse is a single-batch LDA example with a huge dictionary.

Addition

Sebastian Wilzbach has done a huge work on infrastructure setup. Arch package was added.

Bugs fixed

See fixed bugs for ndslice.

Contributors are wanted!

See our TODO List. Mir is very young and we are open for contributing to source code, documentation, examples and benchmarks.