Our AIR app has a function to export data from a DataGrid to Excel, which calls out to our J2EE server to build the excel file, and is then returned to the client as a byteArray which can then be saved on the client machine. We have noticed that for large data sets over a few thousand rows, while the client is waiting for the server to return from the remote object service call, memory utilisation steadily increases and can reach 1GB. The bizarre thing is that this increase is noticed for the adl.exe memory utilisation as reported in Windows Task Manager, whereas when we use the Flashbuilder memory profiler to monitor the same process we see no increase in memory utilisation. Given that while the client is waiting on the server to return from this call the client isn't doing anything else, we are baffled as to why memory should be eaten up by the AIR runtime. Can anyone explain what is going on, and what steps we can take to stop this from occurring? By the way we are using Granite DS and the service call is going through a Granite SecureRemoteObject.