Weird.  So I understand this - the complex requires less buffer overhead but 2x the space.  The real just up front requires 12k of RAM?  Could you look into the implementation and see if there is any way to just force it to take a zero for the complex input?