public void start() throws Exception {
        installShutdownHook();

        System.out.println();
        System.out.printf("Starting benchmark(s) [msgs=%d, msgsize=%d, pubs=%d, subs=%d]\n", numMsgs,
                size, numPubs, numSubs);
        System.out.printf("Current memory usage is %s / %s / %s free/total/max\n", 
                            Utils.humanBytes(Runtime.getRuntime().freeMemory()),
                            Utils.humanBytes(Runtime.getRuntime().totalMemory()),
                            Utils.humanBytes(Runtime.getRuntime().maxMemory()));
        System.out.println("Use ctrl-C to cancel.");
        System.out.println();

        if (this.numPubs > 0) {
            runTest("Pub Only", this.numPubs, 0);
            runTest("Pub/Sub", this.numPubs, this.numSubs);
        } else {
            runTest("Sub", this.numPubs, this.numSubs);
        }

        System.out.println();
        System.out.printf("Final memory usage is %s / %s / %s free/total/max\n", 
                            Utils.humanBytes(Runtime.getRuntime().freeMemory()),
                            Utils.humanBytes(Runtime.getRuntime().totalMemory()),
                            Utils.humanBytes(Runtime.getRuntime().maxMemory()));
        Runtime.getRuntime().removeShutdownHook(shutdownHook);
    }
public void start ( ) throws Exception { installShutdownHook ( ) ; System . out . println ( ) ; System . out . printf ( "Starting benchmark(s) [msgs=%d, msgsize=%d, pubs=%d, subs=%d]\n" , numMsgs , size , numPubs , numSubs ) ; System . out . printf ( "Current memory usage is %s / %s / %s free/total/max\n" , Utils . humanBytes ( Runtime . getRuntime ( ) . freeMemory ( ) ) , Utils . humanBytes ( Runtime . getRuntime ( ) . totalMemory ( ) ) , Utils . humanBytes ( Runtime . getRuntime ( ) . maxMemory ( ) ) ) ; System . out . println ( "Use ctrl-C to cancel." ) ; System . out . println ( ) ; if ( this . numPubs > 0 ) { runTest ( "Pub Only" , this . numPubs , 0 ) ; runTest ( "Pub/Sub" , this . numPubs , this . numSubs ) ; } else { runTest ( "Sub" , this . numPubs , this . numSubs ) ; } System . out . println ( ) ; System . out . printf ( "Final memory usage is %s / %s / %s free/total/max\n" , Utils . humanBytes ( Runtime . getRuntime ( ) . freeMemory ( ) ) , Utils . humanBytes ( Runtime . getRuntime ( ) . totalMemory ( ) ) , Utils . humanBytes ( Runtime . getRuntime ( ) . maxMemory ( ) ) ) ; Runtime . getRuntime ( ) . removeShutdownHook ( shutdownHook ) ; }
Runs the benchmark.

@throws Exception if an exception occurs