Vector Optimized Library of Kernels  3.0.0
Architecture-tuned implementations of math kernels
volk.tmpl.c File Reference
#include <volk/volk_common.h>
#include "volk_machines.h"
#include <volk/volk_typedefs.h>
#include <volk/volk_cpu.h>
#include "volk_rank_archs.h"
#include <volk/volk.h>
#include <stdio.h>
#include <string.h>
#include <assert.h>
#include <volk/${kern.name}.h>

Macros

#define LV_HAVE_GENERIC
 
#define LV_HAVE_DISPATCHER
 

Functions

struct volk_machineget_machine (void)
 
void volk_list_machines (void)
 Prints a list of machines available. More...
 
const char * volk_get_machine (void)
 Returns the name of the machine this instance will use. More...
 
size_t volk_get_alignment (void)
 Get the machine alignment in bytes. More...
 
bool volk_is_aligned (const void *ptr)
 

Variables

static size_t __alignment = 0
 
static intptr_t __alignment_mask = 0
 
for kern in kernels
 
 return
 

Macro Definition Documentation

◆ LV_HAVE_DISPATCHER

#define LV_HAVE_DISPATCHER

◆ LV_HAVE_GENERIC

#define LV_HAVE_GENERIC

Function Documentation

◆ get_machine()

struct volk_machine* get_machine ( void  )

◆ volk_get_alignment()

size_t volk_get_alignment ( void  )

Get the machine alignment in bytes.

◆ volk_get_machine()

const char* volk_get_machine ( void  )

Returns the name of the machine this instance will use.

◆ volk_is_aligned()

bool volk_is_aligned ( const void ptr)

Is the pointer on a machine alignment boundary?

Note: for performance reasons, this function is not usable until another volk API call is made which will perform certain initialization tasks.

Parameters
ptrthe pointer to some memory buffer
Returns
1 for alignment boundary, else 0

◆ volk_list_machines()

void volk_list_machines ( void  )

Prints a list of machines available.

Variable Documentation

◆ __alignment

size_t __alignment = 0
static

◆ __alignment_mask

intptr_t __alignment_mask = 0
static

◆ kernels

for kern in kernels

◆ return

return