import timeit

NELEM = 10000
MAXLEN = 128

for i in range(1, MAXLEN):
    t0 = timeit.Timer(
        "b=a.copy()",
        "import numpy; \
        a = numpy.random.rand(%d).astype('S%d')" %(NELEM, i))
    t0_ = min(t0.repeat(3,10))
    t1 = timeit.Timer(
        "b=a.copy(); b.sort()",   # direct sort
#        "b=a.copy(); idx = b.argsort(); b[:] = b[idx]",  # indirect sort
        "import numpy; \
        a = numpy.random.rand(%d).astype('S%d')" %(NELEM, i))
    print round(min(t1.repeat(3,10))-t0_, 4),
print

