[yt-dev] Speed comparison relative to 2.X

Nathan Goldbaum nathan12343 at gmail.com
Fri Feb 14 16:37:53 PST 2014


Hi all,

Matt asked me to look at the performance of unitrefactor relative to
2.X and the current 3.0 codebase. I've done that using the following
test script: http://paste.yt-project.org/show/4312

The script cycles through a time series, printing out particle masses
for each dataset.  In a perfect world, this should be an i/o-bound
operation.

Currently the timings for running this test are as follows:

yt 2.x (dd1ca98)
18.37s user 1.43s system 99% cpu 19.997 total

yt 3.0 (1b17b7e)
48.76s user 1.81s system 99% cpu 50.743 total

yt-3.0 unitrefactor (8131901df14c)
78.72s user 2.00s system 99% cpu 1:20.85 total

So about a thirty second difference between each of the versions.

Clearly this isn't the best news given that we're moving to 3.0 going
forward.  That said, I don't think there has been a lot of focus on
3.0 performance, so it's possible (likely even) there's some
low-hanging fruit for performance optimizations.  There was also a big
refactor of how i/o works for Enzo datasets (moving away from
hdf5_light_reader toward h5py) - maybe that explains some of the
difference between 2.x and 3.0.

Hope this is helpful,

-Nathan



More information about the yt-dev mailing list