Skip to content
Snippets Groups Projects
Commit 01429d6a authored by Henning Fehrmann's avatar Henning Fehrmann Committed by Henning Fehrmann
Browse files

outsource parts which are also needed for FFTWs

parent d3142d28
No related branches found
No related tags found
No related merge requests found
......@@ -16,11 +16,11 @@
*/
#include "hardware_settings.h"
#include "profiler.h"
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
#include <omp.h>
#define __MALLOC(P, size) P = malloc(size); \
......@@ -34,73 +34,6 @@ size_t m = 10000;
size_t n = 10000;
size_t k = 10000;
static unsigned long x=123456789, y=362436069, z=521288629;
unsigned long
xorshf96
(
void
)
{
// NOT thread save
unsigned long t;
x ^= x << 16;
x ^= x >> 5;
x ^= x << 1;
t = x;
x = y;
y = z;
z = t ^ x ^ y;
return z;
}
struct runtime
{
struct timespec start;
struct timespec stop;
char tag[128];
};
void
timer_start
(
struct runtime * timer,
char tag[128]
)
{
struct timespec start;
sprintf(timer->tag,"%s", tag);
clock_gettime(CLOCK_REALTIME , &start);
timer->start = start;
// printf("--------> start timer: %s\n", timer->tag);
}
double
timer_stop
(
struct runtime * timer
)
{
struct timespec stop;
clock_gettime(CLOCK_REALTIME , &stop);
timer->stop = stop;
double res= (double)
(
(timer->stop).tv_sec - (timer->start).tv_sec
)*1000.
+
(double)
(
(timer->stop).tv_nsec - (timer->start).tv_nsec
)/1000000.
;
// printf("--------> stop timer %s: %g ms\n", timer->tag, res );
return res;
}
void
multiplication
(
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment