Performance Metrics in Excel (XlsIO) Library

24 Jul 20263 minutes to read

This section reports the measured performance of XlsIO for common read, create, and save operations across the Text, DateTime, Number, Boolean, and Formula data types. The numbers below are reference values from a single reference machine and XlsIO version; your results will vary based on hardware, .NET runtime, GC behavior, and input size.

Methodology

The following table summarizes the benchmark setup used to produce the numbers on this page.

Item Value
Workbook size 100,000 rows × 50 columns (5,000,000 cells)
File format XLSX
XlsIO version Latest at time of measurement (see “Last updated” below)
Iterations per data type Median of 5 runs after 1 warm-up run
Measurement API System.Diagnostics.Stopwatch around the full operation
GC mode Default workstation GC

To reproduce these numbers on your machine, clone the XlsIO examples repository, open the sample folder linked from each row below, and run it from the command line or Visual Studio.

What affects these numbers

  • CPU speed, core count, and cache size.
  • .NET runtime version and garbage collection mode (workstation vs server).
  • Disk I/O speed for the SaveAs step.
  • XlsIO version (each release typically improves performance).
  • Whether BeginUpdate / EndUpdate is used for style and validation changes.

For tips on improving XlsIO performance, see Improving Performance.

Create and save

The following table shows the time required to create and save an XLSX document containing 100,000 rows and 50 columns for each supported data type.

Data type Time Taken (sec) Sample Link
Text 13 GitHub page
DateTime 15 GitHub page
Number 5 GitHub page
Boolean 5 GitHub page
Formula 35 GitHub page

Load and read

The following table shows the time required to load and read cell values from an XLSX document containing 100,000 rows and 50 columns for each supported data type.

Data type Time taken (seconds) Sample
Text 9 GitHub sample
DateTime 5 GitHub sample
Number 6 GitHub sample
Boolean 4 GitHub sample
Formula 9 GitHub sample

See also