ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/liblzf/bench.c
(Generate patch)

Comparing liblzf/bench.c (file contents):
Revision 1.7 by root, Fri Feb 8 13:20:26 2008 UTC vs.
Revision 1.10 by root, Fri May 1 00:30:53 2009 UTC

4#include <time.h> 4#include <time.h>
5#include <sys/time.h> 5#include <sys/time.h>
6#include <sys/types.h> 6#include <sys/types.h>
7#include <sys/socket.h> 7#include <sys/socket.h>
8#include <sys/ioctl.h> 8#include <sys/ioctl.h>
9#include <sys/stat.h>
9#include <math.h> 10#include <math.h>
11#include <signal.h>
10#include <X11/Xlib.h> 12#include <X11/Xlib.h>
11 13
12#include "lzf.h" 14#include "lzf.h"
13//#include "fastlz.c" 15//#include "fastlz.c"
14 16
30 return tsc-t; 32 return tsc-t;
31 else 33 else
32 return t-tsc; 34 return t-tsc;
33} 35}
34 36
37static void sigu (int signum)
38{
39}
40
41int eventfd(unsigned int,int);
42
35#define DSIZE 2821120 43#define DSIZE 2821120
36 44
37unsigned char data[DSIZE], data2[DSIZE*2], data3[DSIZE*2]; 45unsigned char data[DSIZE], data2[DSIZE*2], data3[DSIZE*2];
38 46
39int main(void) 47int main(void)
43 int i, l, j; 51 int i, l, j;
44 int min = 1<<30; 52 int min = 1<<30;
45 int lp; 53 int lp;
46 char buf[8192]; 54 char buf[8192];
47 int p[2]; 55 int p[2];
56 int evfd = eventfd (0, 0);
57 long ctr = 1;
58 struct stat sbuf;
48 59
49 pipe (p); 60 pipe (p);
50 61
51 FILE *f = fopen ("data", "r"); 62 FILE *f = fopen ("data", "r");
52 fread (data, DSIZE, 1, f); 63 fread (data, DSIZE, 1, f);
53 fclose (f); 64 fclose (f);
54 65
66 signal (SIGURG, sigu);
67
55 for (lp = 0; lp < 100000; lp++) { 68 for (lp = 0; lp < 100000; lp++) {
56 s=stamp(); 69 s=stamp();
57 70
71 //snprintf (buf, 64, "<1.%llx>", (unsigned long long)0xa234567812ULL);
72 getpgrp();
58 kill (0, 23); 73 //kill (0, SIGURG);
59// write (p[1], &p, 1); 74 //write (evfd, &ctr, 8);
60// read (p[1], &i, 4); 75 //read (evfd, &ctr, 8);
76 //write (p[1], &buf, 1);
77 //read (p[0], &buf, 4);
78 //stat ("/etc/passwd", &sbuf);
79 //struct timeval tv;
80 //gettimeofday (&tv, 0);
81
82 l = lzf_compress (data, DSIZE, data2, DSIZE*2);
83 assert(l);
61 84
62 si[0]=measure(s); 85 si[0]=measure(s);
63 86
64 //j = lzf_decompress (data2, l, data3, DSIZE*2); 87 j = lzf_decompress (data2, l, data3, DSIZE*2);
88 assert (j == DSIZE);
65 89
66 printf ("\r%10d (%d) ", si[0], l); 90 printf ("\r%10d (%d) ", si[0], l);
67 if (si[0] < min && si[0] > 0) 91 if (si[0] < min && si[0] > 0)
68 { 92 {
69 printf ("\n"); 93 printf ("\n");

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines