> For the complete documentation index, see [llms.txt](https://aisuko.gitbook.io/wiki/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://aisuko.gitbook.io/wiki/ai-techniques/large-language-model/blas.md).

# BLAS

## Overview

BLAS(Basic Linear Algebra Subprograms) is <mark style="color:red;">**a set of low-level routines for performing common linear algebra operations**</mark> such as:

* vector addition
* scalar multiplication
* dot products
* linear combinations
* matrix multiplication

## Advantages

BLAS implementations are <mark style="color:blue;">**often optimized for speed on a particular machine.**</mark>

* Vector register
* SIMD instructions

So using them can bring substantial performance benefits.

* Some performance improvements in prompt processing using batch sizes higher than 32 (the default is 512).

### Several BLAS implementations

* Apple's implementation
* OpenBLAS
* Intel's implementation
* CBLAS
  * It is a C-style interface to the BLAS routines that can be called using regular C-style calls

## Reference

{% embed url="<https://en.wikipedia.org/wiki/Basic_Linear_Algebra_Subprograms>" %}
