2 * Copyright 2000, International Business Machines Corporation and others.
5 * This software has been released under the terms of the IBM Public
6 * License. For details, see the LICENSE file in the top-level source
7 * directory or online at http://www.openafs.org/dl/license10.html
10 #include <afs/param.h>
11 #include <afsconfig.h>
17 #include <potpourri.h>
26 LWP_SignalProcess(&semaphore);
31 int argc; char *argv[];
33 struct timeval t1, t2;
35 register int i, count, x;
37 static char c[] = "OtherProcess";
39 count = atoi(argv[1]);
41 assert(LWP_InitializeProcessSupport(0, &pid) == LWP_SUCCESS);
42 assert(LWP_CreateProcess(OtherProcess,4096,0, 0, c, &otherpid) == LWP_SUCCESS);
44 waitarray[0] = &semaphore;
46 gettimeofday(&t1, NULL);
47 for (i = 0; i < count; i++)
49 LWP_MwaitProcess(1, waitarray, 1);
51 gettimeofday(&t2, NULL);
53 x = (t2.tv_sec -t1.tv_sec)*1000000 + (t2.tv_usec - t1.tv_usec);
54 printf("%d milliseconds for %d MWaits (%f usec per Mwait and Signal)\n", x/1000, count, (float)(x/count));