README.md 737 Bytes
Newer Older
Perdacher Martin's avatar
Perdacher Martin committed
1
# BlasMeans
perdacherMartin's avatar
perdacherMartin committed
2 3
Using the BLAS (Basic Linear Algebra System) dgemm operation to perform the calculation of the distances in K-means.

perdacherMartin's avatar
perdacherMartin committed
4 5
# Prerequisits

Martin Perdacher's avatar
Martin Perdacher committed
6
- Set your MKL environment variables
perdacherMartin's avatar
typo  
perdacherMartin committed
7
  (see [MKL ](https://software.intel.com/en-us/articles/intel-mkl-103-getting-started))
perdacherMartin's avatar
perdacherMartin committed
8

perdacherMartin's avatar
typo  
perdacherMartin committed
9 10 11 12
  Example:
  ```
  source /opt/intel/mkl/bin/mklvars.sh intel64
  ```
perdacherMartin's avatar
perdacherMartin committed
13

Martin Perdacher's avatar
Martin Perdacher committed
14
- A working CMake installation
perdacherMartin's avatar
typo  
perdacherMartin committed
15
  (see [CMake website](https://cmake.org/))
perdacherMartin's avatar
perdacherMartin committed
16

perdacherMartin's avatar
perdacherMartin committed
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
# CMake Usage

```
mkdir build
cd build
cmake ..
make
```

Finally you can run BlasMeans with its parameters, and with random generated data:

 * n (number of objects in Millions)
 * k (number of clusters)
 * d (dimensionality of the data)
 * t (number of threads)

perdacherMartin's avatar
perdacherMartin committed
33
Example:
perdacherMartin's avatar
perdacherMartin committed
34 35 36
```
./blasMeans -n 64 -k 40 -d 20 -t 4
```