http://qs321.pair.com?node_id=997794


in reply to Out of memory and While replacements with excel XLSX application

The "out of memory" issue is probably caused by Excel::Writer::XLSX. Especially if you have 1 million rows.

You can reduce its memory usage (almost completely*) by setting the workbook set_optimization() method.

... my $workbook = Excel::Writer::XLSX->new( file.xlsx' ); $workbook->set_optimization(); my $worksheet = $workbook->add_worksheet(); ...

* See the Speed and Memory Usage section of the Excel::Writer::XLSX docs for a full explanation.

--
John.

  • Comment on Re: Out of memory and While replacements with excel XLSX application
  • Download Code

Replies are listed 'Best First'.
Re^2: Out of memory and While replacements with excel XLSX application
by Weinstar (Initiate) on Oct 09, 2012 at 05:09 UTC

    This answer was the first one I succefully implemeted. It was a solution to the original question of how to avoid a "out of memory" return, while still writing to .XLSX files. Thanks to the poster.

    The total system memory use never exceeded 4GB as before and the total runtime seemed unchanged.

    I will test some the other solutions to see if the runtime can be optimized through better coding on my part.