Remove debug prints from cs and csquery
[akaros.git] / tests / block_test.c
index b43b92e..2825cf1 100644 (file)
@@ -3,6 +3,7 @@
 #include <stdlib.h>
 #include <parlib.h>
 #include <unistd.h>
+#include <sys/time.h>
 
 pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER;
 #define printf_safe(...) {}
@@ -11,7 +12,7 @@ pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER;
        printf(__VA_ARGS__); \
        pthread_mutex_unlock(&lock);
 
-#define NUM_TEST_THREADS 1
+#define NUM_TEST_THREADS 500
 #define NUM_TEST_LOOPS 1000
 
 pthread_t my_threads[NUM_TEST_THREADS];
@@ -23,13 +24,17 @@ void *block_thread(void* arg)
        assert(!in_vcore_context());
        for (int i = 0; i < NUM_TEST_LOOPS; i++) {
                printf_safe("[A] pthread %d on vcore %d\n", pthread_self()->id, vcore_id());
-               sys_block(5000);
+               sys_block(5000 + pthread_self()->id);
        }
-       return (void*)(pthread_self()->id);
+       return (void*)(long)pthread_self()->id;
 }
 
 int main(int argc, char** argv) 
 {
+       struct timeval tv = {0};
+       if (gettimeofday(&tv, 0))
+               perror("Time error...");
+       printf("Start time: %dsec %dusec\n", tv.tv_sec, tv.tv_usec);
        for (int i = 0; i < NUM_TEST_THREADS; i++) {
                printf_safe("[A] About to create thread %d\n", i);
                pthread_create(&my_threads[i], NULL, &block_thread, NULL);
@@ -40,5 +45,8 @@ int main(int argc, char** argv)
                printf_safe("[A] Successfully joined on thread %d (retval: %p)\n", i,
                            my_retvals[i]);
        }
+       if (gettimeofday(&tv, 0))
+               perror("Time error...");
+       printf("End time  : %dsec %dusec\n", tv.tv_sec, tv.tv_usec);
        printf("All done, exiting cleanishly\n");
 }