# Why is accessing an SMatrix from a struct allocating?

**URL:** <https://discourse.julialang.org/t/why-is-accessing-an-smatrix-from-a-struct-allocating/131016>\
**Category:** Performance\
**Created:** [July 24, 2025, 5:30pm UTC](https://discourse.julialang.org/t/why-is-accessing-an-smatrix-from-a-struct-allocating/131016 "2025-07-24T17:30:38Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![stevengj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stevengj/32/71_2.png) [@stevengj](https://discourse.julialang.org/u/stevengj)\
**Post date:** [July 24, 2025, 5:32pm UTC](https://discourse.julialang.org/t/why-is-accessing-an-smatrix-from-a-struct-allocating/131016/2 "2025-07-24T17:32:15Z")

</div>

> [@r0uv3n](#):
>
> `matrix::SMatrix{3,3,Float64}`

This is an abstract type. The full concrete type is `matrix::SMatrix{3,3,Float64,9}`.

See also many previous discussions, such as [SMatrix{2, 2, Float64} is not a concrete type?](https://discourse.julialang.org/t/smatrix-2-2-float64-is-not-a-concrete-type/104638) and [Computing Inverse of a stack of matrices - #19 by tchr](https://discourse.julialang.org/t/computing-inverse-of-a-stack-of-matrices/45580/19)

---

_[View the full topic](https://discourse.julialang.org/t/why-is-accessing-an-smatrix-from-a-struct-allocating/131016)._
