[yt-dev] Strage Behavior from Rockstar

Stephen Skory s at skory.us
Tue Nov 13 16:25:46 PST 2012


Hi all,

I'm just about to update my PR for rockstar, but as I will say there,
it's not quite ready to pull in. There's a strange thing that needs
fixing first. The strange behavior is having to do with the hierarchy,
it seems. When the hierarchy isn't instantiated first inside python,
it appears that I get hangs in rockstar_interface.pyx in
rh_read_particles() where it needs to access the grid list through the
hierarchy. It looks like some of the time, one or more of the readers
will function correctly, but most of the time at least one reader gets
stuck and sits doing nothing other than making my computer's fans go
crazy.

If I run rockstar this way, everything goes fine:

from yt.mods import *
from yt.analysis_modules.halo_finding.rockstar.api import RockstarHaloFinder
pm = 9.00026e+10
files = glob.glob("DD*/DD????")
files.sort()
ts = TimeSeriesData.from_filenames(files[-1], parallel=False)
for t in ts:
    t.h
rh = RockstarHaloFinder(ts, num_readers = 3, particle_mass=pm)
rh.run()

Notice that above I'm touching the hierarchy before setting up
Rockstar in the for loop. However, if I change "files[-1]" to
something that has more than one entry, the problem happens with the
very first dataset in the time series. Or, if I comment out the for
loop above, even with "files[-1]", things do not work.

If I comment out the for loop above, but in TimeSeriesData() I require
that pf.h get touched before __iter__ returns the snapshot reference,
things work fine in Rockstar for "files[-1]" and "files[:]".

I've seen the same behavior on my Mac and on Linux. If any one has any
ideas on the best way to handle this, let me know. Thanks!


-- 
Stephen Skory
s at skory.us
http://stephenskory.com/
510.621.3687 (google voice)



More information about the yt-dev mailing list