2

次のプログラムを実行しています。

import cStringIO
import time
import threading

def func(tid):
    buff = 'a'*4096
    i = 0
    while (i < 40000000):
        output = cStringIO.StringIO()
        output.write(buff)
        contents = output.getvalue()
        output.close()
        i = i + 1

threads = 16
threadlist = []

start = time.time()
for tc in range(threads):
    thr = threading.Thread(target=func, args=(tc,))
    threadlist.append(thr)
    thr.start()

for thr in threadlist:
    thr.join()

end = time.time()
print "Time taken is %s" % (end - start)

まったく同じハードウェアを備えたマシンで、一方はubuntu 10.04を実行し、もう一方は14.04を実行しています。10.04 では 1409.54 秒かかるのに対し、14.04 では 1656.81 秒かかり、14.04 では 17% のパフォーマンス低下を示しています。何か案は?

4

1 に答える 1