# CategoryCPUInfo

CPU feature detection for SDL.

These functions are largely concerned with reporting if the system has
access to various SIMD instruction sets, but also has other important info
to share, such as system RAM size and number of logical CPU cores.

CPU instruction set checks, like [SDL_HasSSE](SDL_HasSSE)() and
[SDL_HasNEON](SDL_HasNEON)(), are available on all platforms, even if they
don't make sense (an ARM processor will never have SSE and an x86 processor
will never have NEON, for example, but these functions still exist and will
simply return false in these cases).

<!-- END CATEGORY DOCUMENTATION -->

## Functions

<!-- DO NOT HAND-EDIT CATEGORY LISTS, THEY ARE AUTOGENERATED AND WILL BE OVERWRITTEN, BASED ON TAGS IN INDIVIDUAL PAGE FOOTERS. EDIT THOSE INSTEAD. -->
<!-- BEGIN CATEGORY LIST: CategoryCPUInfo, CategoryAPIFunction -->
- [SDL_GetCPUCacheLineSize](SDL_GetCPUCacheLineSize)
- [SDL_GetNumLogicalCPUCores](SDL_GetNumLogicalCPUCores)
- [SDL_GetSIMDAlignment](SDL_GetSIMDAlignment)
- [SDL_GetSystemRAM](SDL_GetSystemRAM)
- [SDL_HasAltiVec](SDL_HasAltiVec)
- [SDL_HasARMSIMD](SDL_HasARMSIMD)
- [SDL_HasAVX](SDL_HasAVX)
- [SDL_HasAVX2](SDL_HasAVX2)
- [SDL_HasAVX512F](SDL_HasAVX512F)
- [SDL_HasLASX](SDL_HasLASX)
- [SDL_HasLSX](SDL_HasLSX)
- [SDL_HasMMX](SDL_HasMMX)
- [SDL_HasNEON](SDL_HasNEON)
- [SDL_HasSSE](SDL_HasSSE)
- [SDL_HasSSE2](SDL_HasSSE2)
- [SDL_HasSSE3](SDL_HasSSE3)
- [SDL_HasSSE41](SDL_HasSSE41)
- [SDL_HasSSE42](SDL_HasSSE42)
<!-- END CATEGORY LIST -->

## Datatypes

<!-- DO NOT HAND-EDIT CATEGORY LISTS, THEY ARE AUTOGENERATED AND WILL BE OVERWRITTEN, BASED ON TAGS IN INDIVIDUAL PAGE FOOTERS. EDIT THOSE INSTEAD. -->
<!-- BEGIN CATEGORY LIST: CategoryCPUInfo, CategoryAPIDatatype -->
- (none.)
<!-- END CATEGORY LIST -->

## Structs

<!-- DO NOT HAND-EDIT CATEGORY LISTS, THEY ARE AUTOGENERATED AND WILL BE OVERWRITTEN, BASED ON TAGS IN INDIVIDUAL PAGE FOOTERS. EDIT THOSE INSTEAD. -->
<!-- BEGIN CATEGORY LIST: CategoryCPUInfo, CategoryAPIStruct -->
- (none.)
<!-- END CATEGORY LIST -->

## Enums

<!-- DO NOT HAND-EDIT CATEGORY LISTS, THEY ARE AUTOGENERATED AND WILL BE OVERWRITTEN, BASED ON TAGS IN INDIVIDUAL PAGE FOOTERS. EDIT THOSE INSTEAD. -->
<!-- BEGIN CATEGORY LIST: CategoryCPUInfo, CategoryAPIEnum -->
- (none.)
<!-- END CATEGORY LIST -->

## Macros

<!-- DO NOT HAND-EDIT CATEGORY LISTS, THEY ARE AUTOGENERATED AND WILL BE OVERWRITTEN, BASED ON TAGS IN INDIVIDUAL PAGE FOOTERS. EDIT THOSE INSTEAD. -->
<!-- BEGIN CATEGORY LIST: CategoryCPUInfo, CategoryAPIMacro -->
- [SDL_CACHELINE_SIZE](SDL_CACHELINE_SIZE)
<!-- END CATEGORY LIST -->


----
[CategoryAPICategory](CategoryAPICategory)