mir 0.17.0-alpha9
Generic Numerical Library for Science and Machine Learning
To use this package, run the following command in your project's root directory:
Manual usage
Put the following dependency into your project's dependences section:
Mir
Generic Numerical Library for Science and Machine Learning.
Projects based on Mir
Documentation
API can be found here. Read also the Mir blog.
Contents
mir.ndslice
Multidimensional Random Access Ranges and Arraysmir.sparse
Sparse TensorsSparse
- DOK format- Different ranges for COO format
CompressedTensor
- CSR/CSC formatsmir.sparse.blas
- Sparse BLAS forCompressedTensor
mir.model.lda.hoffman
- Online variational Bayes for latent Dirichlet allocation (Online VB LDA) for sparse documents. LDA is used for topic modeling.mir.combinatorics
Combinations, combinations with repeats, cartesian power, permutations.mir.las.sum
Functions and Output Ranges for Summation Algorithms. Works with user-defined types.- Precise algorithm: improved analog of Python's
fsum
- Pairwise algorithm: fast version for Input Ranges
- Kahan, KBN, and KB2 algorithms
In progress
mir.random
- non-uniform RNGs.mir.glas
- Generic Linear Algebra Subroutines.
Compatibility
- LDC (LLVM D Compiler) >=
1.1.0-beta2
(recommended compiler). - DMD (reference D compiler) >=
2.072.1
.
Linux | Mac OS X | Windows | |
---|---|---|---|
LDC 64 | |||
LDC 32 | N/A | N/A | |
DMD 64 | |||
DMD 32 | N/A |
Fast setup with the dub package manager
Dub is the D's package manager. You can create a new project with:
dub init <project-name>
Now you need to edit the dub.json
add mir
as dependency and set its targetType to executable
.
{
...
"dependencies": {
"mir": "~><current-version>"
},
"targetType": "executable",
"dflags-ldc": ["-mcpu=native"]
}
Now you can create a main file in the source
and run your code with
dub
Flags --build=release
and --compiler=ldmd2
can be added for a performance boost:
dub --build=release --compiler=ldmd2
ldmd2
is a shell on top of LDC (LLVM D Compiler).
"dflags-ldc": ["-mcpu=native"]
allows LDC to optimize Mir for your CPU.
Arch Linux
Type | Name | Version |
---|---|---|
Stable | libmir | |
Latest | libmir-git |
Contributing
See our TODO List. Mir is very young and we are open for contributing to source code, documentation, examples and benchmarks.
Notes
mir.ndslice
is a development version of thestd.experimental.ndslice
package.
- 0.17.0-alpha9 released 8 years ago
- libmir/mir
- BSL-1.0
- 2015-2016, Ilya Yaroshenko, Mir Team
- Authors:
- Dependencies:
- cpuid
- Versions:
-
3.2.3 2022-Jun-05 3.2.2 2020-Nov-15 3.2.1 2020-Mar-30 3.2.0 2019-Apr-13 3.1.2 2019-Mar-23 - Download Stats:
-
-
0 downloads today
-
5 downloads this week
-
8 downloads this month
-
16738 downloads total
-
- Score:
- 2.7
- Short URL:
- mir.dub.pm