I still have bad timings using the new OOXML. I did however replace all the SortedDictionary<> in the GetLastKey calls with Dictionary<> and my times improved to this. This probably increases memory load however.
Start time: 11/21/2013 4:34:32 PM
[00:00:00.0850085] 0 rows written
[00:00:00.7930793] 10000 rows written
[00:00:02.5712571] 20000 rows written
[00:00:05.4945494] 30000 rows written
[00:00:09.4819481] 40000 rows written
[00:00:14.7574756] 50000 rows written
[00:00:21.1301128] 60000 rows written
[00:00:28.4608458] 70000 rows written
[00:00:37.0177014] 80000 rows written
[00:00:47.3060936] 90000 rows written
[00:00:58.1362526] 100000 rows written
Granted its slower than HSSF, but not exponentially slower as before.
Start time: 11/21/2013 4:34:32 PM
[00:00:00.0850085] 0 rows written
[00:00:00.7930793] 10000 rows written
[00:00:02.5712571] 20000 rows written
[00:00:05.4945494] 30000 rows written
[00:00:09.4819481] 40000 rows written
[00:00:14.7574756] 50000 rows written
[00:00:21.1301128] 60000 rows written
[00:00:28.4608458] 70000 rows written
[00:00:37.0177014] 80000 rows written
[00:00:47.3060936] 90000 rows written
[00:00:58.1362526] 100000 rows written
Granted its slower than HSSF, but not exponentially slower as before.