The ACE engine of VIA processors is now used for AES-128.
[libgcrypt.git] / cipher / test-getrusage.c
1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <sys/resource.h>
4
5 int
6 main (int argc, char **argv)
7 {
8   struct rusage buf;
9
10   if (argc > 1)
11     {
12       system (argv[1]);
13
14       if (getrusage (RUSAGE_CHILDREN, &buf ))
15         {
16           perror ("getrusage");
17           return 1;
18         }
19     }
20   else
21     {
22       if (getrusage (RUSAGE_SELF, &buf ))
23         {
24           perror ("getrusage");
25           return 1;
26         }
27     }
28
29   printf ("ru_utime   = %ld.%06ld\n",
30           buf.ru_utime.tv_sec, buf.ru_utime.tv_usec); 
31   printf ("ru_stime   = %ld.%06ld\n",
32           buf.ru_stime.tv_sec, buf.ru_stime.tv_usec);
33   printf ("ru_maxrss  = %ld\n", buf.ru_maxrss   );
34   printf ("ru_ixrss   = %ld\n", buf.ru_ixrss    );
35   printf ("ru_idrss   = %ld\n", buf.ru_idrss    );
36   printf ("ru_isrss   = %ld\n", buf.ru_isrss    );
37   printf ("ru_minflt  = %ld\n", buf.ru_minflt   );
38   printf ("ru_majflt  = %ld\n", buf.ru_majflt   );
39   printf ("ru_nswap   = %ld\n", buf.ru_nswap    );
40   printf ("ru_inblock = %ld\n", buf.ru_inblock  );
41   printf ("ru_oublock = %ld\n", buf.ru_oublock  );
42   printf ("ru_msgsnd  = %ld\n", buf.ru_msgsnd   );
43   printf ("ru_msgrcv  = %ld\n", buf.ru_msgrcv   );
44   printf ("ru_nsignals= %ld\n", buf.ru_nsignals );
45   printf ("ru_nvcsw   = %ld\n", buf.ru_nvcsw    );
46   printf ("ru_nivcsw  = %ld\n", buf.ru_nivcsw   );
47
48   fprintf (stderr, "ru_utime   ru_stime   ru_minflt  ru_nccsw  ru_nivcsw\n");
49   fprintf (stderr, "%ld.%06ld  %ld.%06ld  %5ld       %5ld      %5ld\n");
50
51
52   return 0;
53 }
54
55
56 /* Codesnippet for debugging in random.c. */
57 #if 0
58 static void
59 collect_rusage_stats (struct rusage *rb)
60 {
61   static int idx;
62   static struct rusage buf[100];
63   
64   if (!rb)
65     {
66       int i;
67
68       fprintf (stderr, "ru_utime   ru_stime   ru_minflt  ru_nvcsw  ru_nivcsw\n");
69       for (i=0; i < idx; i++)
70         fprintf (stderr, "%ld.%06ld   %ld.%06ld %5ld       %5ld      %5ld\n",
71                  buf[i].ru_utime.tv_sec, buf[i].ru_utime.tv_usec, 
72                  buf[i].ru_stime.tv_sec, buf[i].ru_stime.tv_usec, 
73                  buf[i].ru_minflt, 
74                  buf[i].ru_nvcsw,
75                  buf[i].ru_nivcsw);
76     }      
77   else if (idx < DIM(buf))
78     {
79       buf[idx++] = *rb;
80     }
81 }
82 #endif
83 /*
84  void
85  _gcry_random_dump_stats()
86  {
87 @@ -233,8 +261,11 @@
88                   rndstats.naddbytes, rndstats.addbytes,
89         rndstats.mixkey, rndstats.ngetbytes1, rndstats.getbytes1,
90                     rndstats.ngetbytes2, rndstats.getbytes2 );
91 +
92 +    collect_rusage_stats (NULL);
93  }
94
95 ========
96
97      getrusage (RUSAGE_SELF, &buf );
98 +    collect_rusage_stats (&buf);
99      add_randomness( &buf, sizeof buf, 1 );
100      memset( &buf, 0, sizeof buf );
101    }
102  
103 */
104
105