#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <mmintrin.h>
#include <xmmintrin.h>
#include <emmintrin.h>
#include <pmmintrin.h>
#include <tmmintrin.h>
#include <smmintrin.h>
#include <nmmintrin.h>
#include <wmmintrin.h>
#include "timer.clock_gettime.c"
Go to the source code of this file.
|
__m128d | ssp_blendv_pd_SSE2 (__m128d a, __m128d b, __m128d mask) |
|
template<typename IT > |
void | SSEspmv (const double *V, const uint64_t *M, const IT *bot, const IT nrb, const double *X, double *Y) |
|
int | main () |
|
template<typename IT >
void SSEspmv |
( |
const double * |
V, |
|
|
const uint64_t * |
M, |
|
|
const IT * |
bot, |
|
|
const IT |
nrb, |
|
|
const double * |
X, |
|
|
double * |
Y |
|
) |
| |
SpMV (usually used as a subroutine) using bitmasked register blocks This version works only with doubles and 8x8 register blocks
- Parameters
-
[in] | nbr | number of register blocks |
[in] | bot | the local part of the bottom array, i.e. {lower row bits}.{higher row bits} |
Definition at line 92 of file SSEspmv.h.
__m128d ssp_blendv_pd_SSE2 |
( |
__m128d |
a, |
|
|
__m128d |
b, |
|
|
__m128d |
mask |
|
) |
| |
|
inline |
{SSE2,_mm_blendv_pd}
Definition at line 61 of file SSEspmv.h.