-
Notifications
You must be signed in to change notification settings - Fork 30
Description
recreate by running a pull_antpols with ~50 or so antennas
import aipy as a
uvi = a.miriad.UV('zen.2457471.18781.xx.uvc')
a.scripting.uv_selector(uvi, ants='(1,3,4,13,15,16,23,26,37,38,41,42,46,47,49,50,56,57,58,59,61,63,66,67,70,71,73,74,82,83,87,90,98,99,103,106,114,115,116,117,118,119,120,121,122,123,124,125,126,127)_(1,3,4,13,15,16,23,26,37,38,41,42,46,47,49,50,56,57,58,59,61,63,66,67,70,71,73,74,82,83,87,90,98,99,103,106,114,115,116,117,118,119,120,121,122,123,124,125,126,127)')
zen.2457471.18781.xx.uvc is 3.7GB
running this uv_selector uses about 20GB of ram.
The origin seems to be that each miriad.select does a malloc for each baseline that is order MAXANT^2. MAXANT was recently increased to 2048, making this issue more significant.
We are bypassing this issue for now in pull_antpols.py by selecting baselines in the uv.pipe with an mfunc