Actually it's only needed because in the code I do this:

    print 'Testing one-core...',
    start = time.time()
    vectorizer.fit_transform(corpus)
    one_core.append(time.time() - start)
    print 'Done in %.3fs' % one_core[-1]

So in order to see the "Testing one-core..." being printed while waiting for the test to complete, we need to flush the buffer. The default behaviour of Python's `print` seems to hold the buffer if no newline is encountered. We need the unbuffered because buffering the "Testing one-core..." defeats the purpose of printing it in the first place, which is to see which part of the test it's currently doing.

We can change every occurrence of this kind of print with `stderr.write`, but I think it's not that necessary since this is only a benchmark script, which is not supposed to be included to any other script, hence the side effect is OK. What do you think?