]> code.citadel.org Git - citadel.git/blobdiff - citadel/utils/loadtest.c
loadtest: paint the screen in a separate pass
[citadel.git] / citadel / utils / loadtest.c
index 2d62d98ac1a7c96759dc0b2cf313d88971315eb4..0f5920ab4c08adcc92fb91cafc1e4907cce6d716 100644 (file)
@@ -304,6 +304,7 @@ void *loadtest(void *blah) {
        long ops = 0;
        printf("\033[%d;%dH\033[33m       0\033[0m", row, col);
        fflush(stdout);
+
        while(1) {
                perform_random_thing(serv_sock);
                printf("\033[%d;%dH\033[32m%8ld\033[0m", row, col, ++ops);
@@ -342,6 +343,7 @@ void setup_accounts(int serv_sock) {
 int main(int argc, char **argv) {
        int i;
        int nthreads = 3;
+       int row, col;
 
        fprintf(stderr, "\033[2J\033[H"
                        "\033[44m\033[33m\033[1m                                                                        \033[K\033[0m\n"
@@ -378,6 +380,14 @@ int main(int argc, char **argv) {
        }
        test_pass[sizeof(test_pass)] = 0;
 
+       // paint the screen
+       for (i=0; i<nthreads; ++i) {
+               row = 10 + (i % 20);
+               col = (i / 20) * 10;
+               printf("\033[%d;%dH\033[31m--------\033[0m", row, col);
+               fflush(stdout);
+       }
+
        // start connecting
        int serv_sock = uds_connectsock(file_citadel_admin_socket);
        if (serv_sock < 0) {
@@ -392,11 +402,6 @@ int main(int argc, char **argv) {
 
        for (i=0; i<(nthreads-1); ++i) {
 
-               int row = 10 + ((i+1) % 20);
-               int col = ((i+1) / 20) * 10;
-               printf("\033[%d;%dH\033[31m--------\033[0m", row, col);
-               fflush(stdout);
-
                pthread_t thread;
                pthread_attr_t attr;
                int ret = 0;
@@ -411,4 +416,4 @@ int main(int argc, char **argv) {
        }
        loadtest(NULL);
        return(0);
-}
\ No newline at end of file
+}