  Hyperdimensional Computing (HDC) is a bio-inspired computing framework that
has gained increasing attention, especially as a more efficient approach to
machine learning (ML). This work introduces the \name{} compiler, the first
open-source compiler that translates high-level descriptions of HDC
classification methods into optimized C code. The code generated by the
proposed compiler has three main features for embedded systems and
High-Performance Computing: (1) it is self-contained and has no library or
platform dependencies; (2) it supports multithreading and single instruction
multiple data (SIMD) instructions using C intrinsics; (3) it is optimized for
maximum performance and minimal memory usage. \name{} is designed like a modern
compiler, featuring an intuitive and descriptive input language, an
intermediate representation (IR), and a retargetable backend. This makes
\name{} a valuable tool for research and applications exploring HDC for
classification tasks on embedded systems and High-Performance Computing. To
substantiate these claims, we conducted experiments with HDCC on several of the
most popular datasets in the HDC literature. The experiments were run on four
different machines, including different hyperparameter configurations, and the
results were compared to a popular prototyping library built on PyTorch. The
results show a training and inference speedup of up to 132x, averaging 25x
across all datasets and machines. Regarding memory usage, using
10240-dimensional hypervectors, the average reduction was 5x, reaching up to
14x. When considering vectors of 64 dimensions, the average reduction was 85x,
with a maximum of 158x less memory utilization.
