Closed joelverhagen closed 8 months ago
The results change a lot. I'll include the ranking and timings of the top 10 using server GC.
Method | LineCount | Mean | Error | StdDev | Gen0 | Gen1 | Gen2 | Allocated |
---|---|---|---|---|---|---|---|---|
Sep_MT | 1000000 | 171.2 ms | 3.70 ms | 0.96 ms | 90.9091 | - | - | 261.52 MB |
RecordParserParallel | 1000000 | 381.5 ms | 67.95 ms | 17.65 ms | - | - | - | 280.05 MB |
Sep | 1000000 | 655.6 ms | 38.42 ms | 9.98 ms | - | - | - | 260.42 MB |
Sylvan_Data_Csv | 1000000 | 754.7 ms | 57.54 ms | 14.94 ms | - | - | - | 260.6 MB |
SoftCircuits_CsvParser | 1000000 | 821.3 ms | 20.14 ms | 3.12 ms | 500.0000 | - | - | 1173.42 MB |
Microsoft_ML | 1000000 | 987.8 ms | 724.04 ms | 188.03 ms | 500.0000 | - | - | 1794.83 MB |
string_Split | 1000000 | 1,039.8 ms | 646.34 ms | 167.85 ms | 500.0000 | - | - | 2074.87 MB |
Cursively | 1000000 | 1,063.4 ms | 117.01 ms | 30.39 ms | 500.0000 | - | - | 344.64 MB |
TxtCsvHelper | 1000000 | 1,097.9 ms | 46.89 ms | 12.18 ms | 1000.0000 | - | - | 2349.53 MB |
FluentCSV | 1000000 | 1,172.2 ms | 686.71 ms | 178.34 ms | 500.0000 | - | - | 2074.87 MB |
RecordParser | 1000000 | 1,181.1 ms | 128.73 ms | 33.43 ms | 500.0000 | - | - | 260.65 MB |
HomeGrown2 | 1000000 | 1,275.1 ms | 115.70 ms | 30.05 ms | - | - | - | 260.62 MB |
Sky_Data_Csv | 1000000 | 1,435.1 ms | 30.76 ms | 7.99 ms | 1000.0000 | - | - | 2304.09 MB |
NReco_Csv | 1000000 | 1,442.3 ms | 14.32 ms | 2.22 ms | - | - | - | 1174.13 MB |
Ctl_Data | 1000000 | 1,442.7 ms | 52.37 ms | 13.60 ms | 1000.0000 | - | - | 2385.38 MB |
HomeGrown | 1000000 | 1,447.3 ms | 37.98 ms | 9.86 ms | - | - | - | 1173.41 MB |
mgholam_fastCSV | 1000000 | 1,553.6 ms | 25.62 ms | 3.96 ms | - | - | - | 1260.91 MB |
Dsv | 1000000 | 1,582.0 ms | 63.58 ms | 9.84 ms | 1000.0000 | - | - | 2082.5 MB |
ServiceStack_Text | 1000000 | 1,639.5 ms | 52.44 ms | 8.12 ms | 1000.0000 | - | - | 2441.08 MB |
GenericParsing | 1000000 | 1,698.4 ms | 75.69 ms | 11.71 ms | - | - | - | 1173.41 MB |
KBCsv | 1000000 | 1,802.6 ms | 60.63 ms | 15.75 ms | 1000.0000 | - | - | 1501.49 MB |
CSVFile | 1000000 | 1,810.6 ms | 65.20 ms | 16.93 ms | 1000.0000 | - | - | 2713.14 MB |
FastCsvParser | 1000000 | 1,824.2 ms | 107.01 ms | 27.79 ms | 1000.0000 | - | - | 2055.36 MB |
FileHelpers | 1000000 | 1,891.6 ms | 80.65 ms | 20.94 ms | 1000.0000 | - | - | 2105.43 MB |
CsvHelper | 1000000 | 1,953.0 ms | 45.65 ms | 7.06 ms | - | - | - | 260.58 MB |
CsvTextFieldParser | 1000000 | 2,392.8 ms | 808.32 ms | 209.92 ms | 1000.0000 | - | - | 4133.4 MB |
LumenWorksCsvReader | 1000000 | 2,830.0 ms | 204.63 ms | 53.14 ms | 1000.0000 | - | - | 5234.74 MB |
TinyCsvReader | 1000000 | 3,182.8 ms | 54.05 ms | 14.04 ms | 2000.0000 | 1000.0000 | - | 6251.46 MB |
LinqToCsv | 1000000 | 3,192.7 ms | 160.73 ms | 41.74 ms | 2000.0000 | 1000.0000 | - | 5635.27 MB |
Cesil | 1000000 | 3,424.1 ms | 222.77 ms | 57.85 ms | - | - | - | 914.48 MB |
CsvTools | 1000000 | 3,654.0 ms | 71.18 ms | 11.02 ms | 1000.0000 | - | - | 2073.7 MB |
Open_Text_CSV | 1000000 | 3,743.4 ms | 40.91 ms | 6.33 ms | 1000.0000 | - | - | 1539.69 MB |
FlatFiles | 1000000 | 5,166.4 ms | 649.61 ms | 168.70 ms | 2000.0000 | 1000.0000 | - | 4200.88 MB |
StackOverflowRegex | 1000000 | 5,246.2 ms | 215.96 ms | 56.08 ms | 1000.0000 | - | - | 4704.41 MB |
Angara_Table | 1000000 | 5,762.8 ms | 1,691.33 ms | 439.23 ms | 1000.0000 | - | - | 4027.34 MB |
Csv | 1000000 | 6,276.5 ms | 90.99 ms | 23.63 ms | 2000.0000 | 1000.0000 | - | 9537.62 MB |
Microsoft_Data_Analysis | 1000000 | 9,073.4 ms | 375.19 ms | 97.44 ms | 3000.0000 | 1000.0000 | - | 13310.61 MB |
Microsoft_VisualBasic_FileIO_TextFieldParser | 1000000 | 15,658.4 ms | 108.81 ms | 16.84 ms | 136000.0000 | 37000.0000 | 6000.0000 | 40104.72 MB |
CommonLibrary_NET | 1000000 | 15,794.5 ms | 3,121.58 ms | 810.67 ms | 4000.0000 | 2000.0000 | 1000.0000 | 14799.59 MB |
ChoETL | 1000000 | 16,610.2 ms | 190.04 ms | 29.41 ms | 2000.0000 | 1000.0000 | - | 6658 MB |
Method | LineCount | Mean | Error | StdDev | Gen0 | Gen1 | Gen2 | Allocated |
---|---|---|---|---|---|---|---|---|
Sep_MT | 1000000 | 466.5 ms | 87.65 ms | 13.56 ms | 31500.0000 | 31250.0000 | 250.0000 | 261.67 MB |
RecordParserParallel | 1000000 | 821.6 ms | 47.39 ms | 7.33 ms | 38000.0000 | 37500.0000 | 4500.0000 | 280.45 MB |
Sep | 1000000 | 1,030.8 ms | 32.34 ms | 5.00 ms | 34000.0000 | 33500.0000 | 3500.0000 | 260.43 MB |
Sylvan_Data_Csv | 1000000 | 1,087.7 ms | 21.50 ms | 5.58 ms | 34000.0000 | 33500.0000 | 3500.0000 | 260.61 MB |
RecordParser | 1000000 | 1,521.0 ms | 48.27 ms | 12.53 ms | 34000.0000 | 33000.0000 | 4000.0000 | 260.67 MB |
HomeGrown2 | 1000000 | 1,559.6 ms | 33.12 ms | 8.60 ms | 34000.0000 | 33000.0000 | 4000.0000 | 260.63 MB |
Cursively | 1000000 | 1,608.8 ms | 75.40 ms | 11.67 ms | 45000.0000 | 24000.0000 | 4000.0000 | 344.65 MB |
CsvHelper | 1000000 | 2,243.1 ms | 36.67 ms | 5.67 ms | 34000.0000 | 33000.0000 | 4000.0000 | 260.59 MB |
SoftCircuits_CsvParser | 1000000 | 2,677.2 ms | 131.28 ms | 20.32 ms | 152000.0000 | 151000.0000 | 7000.0000 | 1173.45 MB |
string_Split | 1000000 | 2,812.5 ms | 47.89 ms | 7.41 ms | 265000.0000 | 136000.0000 | 7000.0000 | 2074.92 MB |
TxtCsvHelper | 1000000 | 2,946.1 ms | 19.73 ms | 1.08 ms | 299000.0000 | 153000.0000 | 7000.0000 | 2349.59 MB |
FluentCSV | 1000000 | 2,957.7 ms | 37.33 ms | 5.78 ms | 265000.0000 | 136000.0000 | 7000.0000 | 2074.92 MB |
NReco_Csv | 1000000 | 3,143.2 ms | 184.75 ms | 47.98 ms | 152000.0000 | 151000.0000 | 7000.0000 | 1174.17 MB |
HomeGrown | 1000000 | 3,149.6 ms | 15.76 ms | 2.44 ms | 152000.0000 | 151000.0000 | 7000.0000 | 1173.44 MB |
mgholam_fastCSV | 1000000 | 3,245.6 ms | 114.23 ms | 29.66 ms | 161000.0000 | 83000.0000 | 6000.0000 | 1260.91 MB |
GenericParsing | 1000000 | 3,337.6 ms | 81.33 ms | 21.12 ms | 152000.0000 | 151000.0000 | 7000.0000 | 1173.45 MB |
KBCsv | 1000000 | 3,430.1 ms | 132.94 ms | 34.52 ms | 192000.0000 | 99000.0000 | 6000.0000 | 1501.53 MB |
Dsv | 1000000 | 3,480.1 ms | 94.68 ms | 14.65 ms | 266000.0000 | 136000.0000 | 7000.0000 | 2082.56 MB |
Sky_Data_Csv | 1000000 | 3,502.9 ms | 288.32 ms | 74.88 ms | 294000.0000 | 150000.0000 | 7000.0000 | 2304.15 MB |
ServiceStack_Text | 1000000 | 3,570.4 ms | 28.98 ms | 4.48 ms | 310000.0000 | 107000.0000 | 6000.0000 | 2441.14 MB |
CSVFile | 1000000 | 3,770.8 ms | 96.75 ms | 25.12 ms | 344000.0000 | 119000.0000 | 6000.0000 | 2713.21 MB |
Microsoft_ML | 1000000 | 3,812.4 ms | 113.52 ms | 17.57 ms | 243000.0000 | 242000.0000 | 10000.0000 | 1796.91 MB |
FastCsvParser | 1000000 | 3,975.3 ms | 91.39 ms | 23.73 ms | 262000.0000 | 134000.0000 | 7000.0000 | 2055.41 MB |
FileHelpers | 1000000 | 3,996.7 ms | 91.61 ms | 23.79 ms | 269000.0000 | 138000.0000 | 7000.0000 | 2105.49 MB |
CsvTextFieldParser | 1000000 | 4,080.2 ms | 181.05 ms | 47.02 ms | 523000.0000 | 178000.0000 | 7000.0000 | 4133.5 MB |
Ctl_Data | 1000000 | 4,191.8 ms | 155.86 ms | 40.48 ms | 304000.0000 | 153000.0000 | 7000.0000 | 2385.44 MB |
Cesil | 1000000 | 4,557.5 ms | 177.78 ms | 27.51 ms | 118000.0000 | 117000.0000 | 6000.0000 | 914.49 MB |
Open_Text_CSV | 1000000 | 4,558.4 ms | 74.16 ms | 19.26 ms | 197000.0000 | 61000.0000 | 6000.0000 | 1539.73 MB |
LumenWorksCsvReader | 1000000 | 4,566.0 ms | 120.93 ms | 18.71 ms | 662000.0000 | 174000.0000 | 8000.0000 | 5234.87 MB |
LinqToCsv | 1000000 | 4,877.2 ms | 99.40 ms | 25.81 ms | 712000.0000 | 184000.0000 | 8000.0000 | 5635.41 MB |
TinyCsvReader | 1000000 | 5,028.2 ms | 189.55 ms | 49.23 ms | 790000.0000 | 203000.0000 | 8000.0000 | 6251.62 MB |
CsvTools | 1000000 | 5,710.7 ms | 98.59 ms | 25.60 ms | 265000.0000 | 136000.0000 | 7000.0000 | 2073.76 MB |
StackOverflowRegex | 1000000 | 6,349.9 ms | 208.39 ms | 32.25 ms | 591000.0000 | 180000.0000 | 4000.0000 | 4704.53 MB |
FlatFiles | 1000000 | 6,399.7 ms | 138.02 ms | 21.36 ms | 531000.0000 | 183000.0000 | 7000.0000 | 4200.99 MB |
Csv | 1000000 | 7,206.1 ms | 726.18 ms | 188.59 ms | 1195000.0000 | 301000.0000 | 2000.0000 | 9537.86 MB |
Angara_Table | 1000000 | 8,330.8 ms | 287.82 ms | 74.75 ms | 460000.0000 | 204000.0000 | 7000.0000 | 4027.37 MB |
Microsoft_Data_Analysis | 1000000 | 11,064.8 ms | 123.67 ms | 19.14 ms | 1626000.0000 | 423000.0000 | 9000.0000 | 13310.63 MB |
Microsoft_VisualBasic_FileIO_TextFieldParser | 1000000 | 14,733.1 ms | 275.82 ms | 71.63 ms | 5034000.0000 | 1007000.0000 | 9000.0000 | 40105.69 MB |
ChoETL | 1000000 | 18,824.9 ms | 478.61 ms | 74.07 ms | 840000.0000 | 215000.0000 | 8000.0000 | 6658.02 MB |
CommonLibrary_NET | 1000000 | 28,331.4 ms | 4,246.17 ms | 1,102.72 ms | 1785000.0000 | 693000.0000 | 11000.0000 | 14799.64 MB |
Updated the blog with these results. Still used workstation GC for the main graphics to be consistent with previous results.
See https://github.com/joelverhagen/NCsvPerf/pull/7#issuecomment-761833022. /cc @airbreather