Skip to content

Instantly share code, notes, and snippets.

@ScottPJones
Created May 25, 2015 21:10
Show Gist options
  • Save ScottPJones/f6fefefd4e4f602aee67 to your computer and use it in GitHub Desktop.
Save ScottPJones/f6fefefd4e4f602aee67 to your computer and use it in GitHub Desktop.
Benchmark results with #11004 PR (May 25th)
ASCII: Looping 100 times, length=8
length: 1.295 microseconds
is_valid_ascii: 25.904 milliseconds (5600 allocations: 62722 KB, 40.59% gc time)
Convert to UTF-8: 985 nanoseconds (100 allocations: 1600 bytes)
Convert to UTF-16: 8.212 microseconds (200 allocations: 11200 bytes)
Convert to UTF-32: 10.364 microseconds (200 allocations: 12800 bytes)
ASCII:: Looping 100 times, length=8
UTF-8: 8, UTF-16: 16, UTF-32: 32
UTF-8 length: 1.679 microseconds
UTF-16 length: 1.281 microseconds
UTF-32 length: 590 nanoseconds
UTF-8 valid: 14.915 milliseconds (5700 allocations: 62723 KB, 6.14% gc time)
UTF-16 valid: 13.890 milliseconds (5600 allocations: 62722 KB, 5.01% gc time)
UTF-32 valid: 13.259 milliseconds (5600 allocations: 62722 KB, 3.17% gc time)
UTF-8 convert to UTF-16: 8.670 microseconds (200 allocations: 11200 bytes)
UTF-8 convert to UTF-32: 10.870 microseconds (200 allocations: 12800 bytes)
UTF-16 convert to UTF-8: 17.557 microseconds (200 allocations: 9600 bytes)
UTF-16 convert to UTF-32: 7.745 microseconds (200 allocations: 12800 bytes)
UTF-32 convert to UTF-8: 12.262 microseconds (400 allocations: 17600 bytes)
UTF-32 convert to UTF-16: 11.343 microseconds (400 allocations: 19200 bytes)
Latin1:: Looping 100 times, length=8
UTF-8: 10, UTF-16: 16, UTF-32: 32
UTF-8 length: 1.443 microseconds
UTF-16 length: 1.254 microseconds
UTF-32 length: 549 nanoseconds
UTF-8 valid: 13.349 milliseconds (5700 allocations: 62723 KB, 4.74% gc time)
UTF-16 valid: 14.020 milliseconds (5600 allocations: 62722 KB, 5.46% gc time)
UTF-32 valid: 13.533 milliseconds (5600 allocations: 62722 KB, 4.98% gc time)
UTF-8 convert to UTF-16: 9.640 microseconds (200 allocations: 11200 bytes)
UTF-8 convert to UTF-32: 9.011 microseconds (200 allocations: 12800 bytes)
UTF-16 convert to UTF-8: 7.553 microseconds (200 allocations: 9600 bytes)
UTF-16 convert to UTF-32: 7.706 microseconds (200 allocations: 12800 bytes)
UTF-32 convert to UTF-8: 24.504 microseconds (400 allocations: 17600 bytes)
UTF-32 convert to UTF-16: 10.707 microseconds (400 allocations: 19200 bytes)
2-byte:: Looping 100 times, length=8
UTF-8: 12, UTF-16: 16, UTF-32: 32
UTF-8 length: 1.661 microseconds
UTF-16 length: 1.228 microseconds
UTF-32 length: 554 nanoseconds
UTF-8 valid: 13.688 milliseconds (5700 allocations: 62723 KB, 4.84% gc time)
UTF-16 valid: 13.416 milliseconds (5600 allocations: 62722 KB, 2.89% gc time)
UTF-32 valid: 13.682 milliseconds (5600 allocations: 62722 KB, 5.16% gc time)
UTF-8 convert to UTF-16: 10.223 microseconds (200 allocations: 11200 bytes)
UTF-8 convert to UTF-32: 19.846 microseconds (200 allocations: 12800 bytes)
UTF-16 convert to UTF-8: 8.480 microseconds (200 allocations: 9600 bytes)
UTF-16 convert to UTF-32: 8.209 microseconds (200 allocations: 12800 bytes)
UTF-32 convert to UTF-8: 13.346 microseconds (400 allocations: 17600 bytes)
UTF-32 convert to UTF-16: 11.712 microseconds (400 allocations: 19200 bytes)
3-byte:: Looping 100 times, length=8
UTF-8: 14, UTF-16: 16, UTF-32: 32
UTF-8 length: 1.872 microseconds
UTF-16 length: 1.236 microseconds
UTF-32 length: 551 nanoseconds
UTF-8 valid: 13.858 milliseconds (5700 allocations: 62723 KB, 6.38% gc time)
UTF-16 valid: 13.311 milliseconds (5600 allocations: 62722 KB, 4.14% gc time)
UTF-32 valid: 17.252 milliseconds (5600 allocations: 62722 KB, 3.30% gc time)
UTF-8 convert to UTF-16: 11.917 microseconds (200 allocations: 11200 bytes)
UTF-8 convert to UTF-32: 12.679 microseconds (200 allocations: 12800 bytes)
UTF-16 convert to UTF-8: 15.258 microseconds (200 allocations: 9600 bytes)
UTF-16 convert to UTF-32: 8.497 microseconds (200 allocations: 12800 bytes)
UTF-32 convert to UTF-8: 21.540 microseconds (400 allocations: 17600 bytes)
UTF-32 convert to UTF-16: 12.449 microseconds (400 allocations: 19200 bytes)
4-byte:: Looping 100 times, length=8
UTF-8: 15, UTF-16: 18, UTF-32: 32
UTF-8 length: 2.111 microseconds
UTF-16 length: 1.436 microseconds
UTF-32 length: 637 nanoseconds
UTF-8 valid: 14.017 milliseconds (5700 allocations: 62723 KB, 6.01% gc time)
UTF-16 valid: 13.141 milliseconds (5600 allocations: 62722 KB, 4.38% gc time)
UTF-32 valid: 13.577 milliseconds (5600 allocations: 62722 KB, 5.66% gc time)
UTF-8 convert to UTF-16: 11.677 microseconds (200 allocations: 11200 bytes)
UTF-8 convert to UTF-32: 9.826 microseconds (200 allocations: 12800 bytes)
UTF-16 convert to UTF-8: 12.899 microseconds (200 allocations: 9600 bytes)
UTF-16 convert to UTF-32: 8.578 microseconds (200 allocations: 12800 bytes)
UTF-32 convert to UTF-8: 19.224 microseconds (400 allocations: 17600 bytes)
UTF-32 convert to UTF-16: 11.460 microseconds (400 allocations: 19200 bytes)
Surrogates:: Looping 100 times, length=8
UTF-8: 17, UTF-16: 18, UTF-32: 32
UTF-8 length: 1.634 microseconds
UTF-16 length: 1.262 microseconds
UTF-32 length: 574 nanoseconds
UTF-8 valid: 13.881 milliseconds (5700 allocations: 62723 KB, 4.71% gc time)
UTF-16 valid: 13.776 milliseconds (5600 allocations: 62722 KB, 3.91% gc time)
UTF-32 valid: 15.313 milliseconds (5600 allocations: 62722 KB, 4.93% gc time)
UTF-8 convert to UTF-16: 10.505 microseconds (200 allocations: 11200 bytes)
UTF-8 convert to UTF-32: 9.714 microseconds (200 allocations: 12800 bytes)
UTF-16 convert to UTF-8: 14.823 microseconds (200 allocations: 9600 bytes)
UTF-16 convert to UTF-32: 9.091 microseconds (200 allocations: 12800 bytes)
UTF-32 convert to UTF-8: 20.065 microseconds (400 allocations: 17600 bytes)
UTF-32 convert to UTF-16: 15.815 microseconds (400 allocations: 19200 bytes)
ASCII: Looping 100 times, length=64
length: 593 nanoseconds
is_valid_ascii: 15.980 milliseconds (5600 allocations: 62722 KB, 5.92% gc time)
Convert to UTF-8: 1.049 microseconds (100 allocations: 1600 bytes)
Convert to UTF-16: 10.115 microseconds (200 allocations: 22400 bytes)
Convert to UTF-32: 13.292 microseconds (200 allocations: 41600 bytes)
ASCII:: Looping 100 times, length=64
UTF-8: 64, UTF-16: 128, UTF-32: 256
UTF-8 length: 4.061 microseconds
UTF-16 length: 3.818 microseconds
UTF-32 length: 687 nanoseconds
UTF-8 valid: 14.520 milliseconds (5700 allocations: 62723 KB, 5.34% gc time)
UTF-16 valid: 13.437 milliseconds (5600 allocations: 62722 KB, 4.41% gc time)
UTF-32 valid: 13.451 milliseconds (5600 allocations: 62722 KB, 3.88% gc time)
UTF-8 convert to UTF-16: 19.876 microseconds (200 allocations: 22400 bytes)
UTF-8 convert to UTF-32: 20.659 microseconds (200 allocations: 41600 bytes)
UTF-16 convert to UTF-8: 15.975 microseconds (200 allocations: 16000 bytes)
UTF-16 convert to UTF-32: 17.153 microseconds (200 allocations: 41600 bytes)
UTF-32 convert to UTF-8: 24.962 microseconds (400 allocations: 24000 bytes)
UTF-32 convert to UTF-16: 26.695 microseconds (400 allocations: 30400 bytes)
Latin1:: Looping 100 times, length=64
UTF-8: 84, UTF-16: 128, UTF-32: 256
UTF-8 length: 4.245 microseconds
UTF-16 length: 3.085 microseconds
UTF-32 length: 555 nanoseconds
UTF-8 valid: 13.548 milliseconds (5700 allocations: 62723 KB, 4.75% gc time)
UTF-16 valid: 13.384 milliseconds (5600 allocations: 62722 KB, 4.35% gc time)
UTF-32 valid: 13.236 milliseconds (5600 allocations: 62722 KB, 4.24% gc time)
UTF-8 convert to UTF-16: 43.054 microseconds (200 allocations: 22400 bytes)
UTF-8 convert to UTF-32: 49.569 microseconds (200 allocations: 41600 bytes)
UTF-16 convert to UTF-8: 37.066 microseconds (200 allocations: 17600 bytes)
UTF-16 convert to UTF-32: 26.128 microseconds (200 allocations: 41600 bytes)
UTF-32 convert to UTF-8: 63.514 microseconds (400 allocations: 25600 bytes)
UTF-32 convert to UTF-16: 36.148 microseconds (400 allocations: 30400 bytes)
2-byte:: Looping 100 times, length=64
UTF-8: 84, UTF-16: 128, UTF-32: 256
UTF-8 length: 4.265 microseconds
UTF-16 length: 3.211 microseconds
UTF-32 length: 533 nanoseconds
UTF-8 valid: 13.625 milliseconds (5700 allocations: 62723 KB, 4.05% gc time)
UTF-16 valid: 13.271 milliseconds (5600 allocations: 62722 KB, 4.40% gc time)
UTF-32 valid: 13.031 milliseconds (5600 allocations: 62722 KB, 4.50% gc time)
UTF-8 convert to UTF-16: 42.377 microseconds (200 allocations: 22400 bytes)
UTF-8 convert to UTF-32: 40.677 microseconds (200 allocations: 41600 bytes)
UTF-16 convert to UTF-8: 28.179 microseconds (200 allocations: 17600 bytes)
UTF-16 convert to UTF-32: 17.221 microseconds (200 allocations: 41600 bytes)
UTF-32 convert to UTF-8: 53.161 microseconds (400 allocations: 25600 bytes)
UTF-32 convert to UTF-16: 26.656 microseconds (400 allocations: 30400 bytes)
3-byte:: Looping 100 times, length=64
UTF-8: 92, UTF-16: 128, UTF-32: 256
UTF-8 length: 4.651 microseconds
UTF-16 length: 3.123 microseconds
UTF-32 length: 489 nanoseconds
UTF-8 valid: 13.841 milliseconds (5700 allocations: 62723 KB, 5.40% gc time)
UTF-16 valid: 13.581 milliseconds (5600 allocations: 62722 KB, 4.66% gc time)
UTF-32 valid: 13.253 milliseconds (5600 allocations: 62722 KB, 3.71% gc time)
UTF-8 convert to UTF-16: 42.462 microseconds (200 allocations: 22400 bytes)
UTF-8 convert to UTF-32: 40.913 microseconds (200 allocations: 41600 bytes)
UTF-16 convert to UTF-8: 62.431 microseconds (200 allocations: 17600 bytes)
UTF-16 convert to UTF-32: 15.078 microseconds (200 allocations: 41600 bytes)
UTF-32 convert to UTF-8: 70.577 microseconds (400 allocations: 25600 bytes)
UTF-32 convert to UTF-16: 35.462 microseconds (400 allocations: 30400 bytes)
4-byte:: Looping 100 times, length=64
UTF-8: 104, UTF-16: 144, UTF-32: 256
UTF-8 length: 5.381 microseconds
UTF-16 length: 13.836 microseconds
UTF-32 length: 559 nanoseconds
UTF-8 valid: 13.603 milliseconds (5700 allocations: 62723 KB, 4.60% gc time)
UTF-16 valid: 16.165 milliseconds (5600 allocations: 62722 KB, 4.90% gc time)
UTF-32 valid: 13.405 milliseconds (5600 allocations: 62722 KB, 4.51% gc time)
UTF-8 convert to UTF-16: 46.837 microseconds (200 allocations: 24000 bytes)
UTF-8 convert to UTF-32: 41.238 microseconds (200 allocations: 41600 bytes)
UTF-16 convert to UTF-8: 70.735 microseconds (200 allocations: 19200 bytes)
UTF-16 convert to UTF-32: 31.548 microseconds (200 allocations: 41600 bytes)
UTF-32 convert to UTF-8: 89.611 microseconds (400 allocations: 27200 bytes)
UTF-32 convert to UTF-16: 36.695 microseconds (400 allocations: 32000 bytes)
Surrogates:: Looping 100 times, length=64
UTF-8: 120, UTF-16: 144, UTF-32: 256
UTF-8 length: 5.809 microseconds
UTF-16 length: 3.410 microseconds
UTF-32 length: 565 nanoseconds
UTF-8 valid: 13.578 milliseconds (5700 allocations: 62723 KB, 4.76% gc time)
UTF-16 valid: 13.574 milliseconds (5600 allocations: 62722 KB, 3.70% gc time)
UTF-32 valid: 13.705 milliseconds (5600 allocations: 62722 KB, 5.07% gc time)
UTF-8 convert to UTF-16: 43.340 microseconds (200 allocations: 24000 bytes)
UTF-8 convert to UTF-32: 39.307 microseconds (200 allocations: 41600 bytes)
UTF-16 convert to UTF-8: 57.794 microseconds (200 allocations: 19200 bytes)
UTF-16 convert to UTF-32: 23.618 microseconds (200 allocations: 41600 bytes)
UTF-32 convert to UTF-8: 66.216 microseconds (400 allocations: 27200 bytes)
UTF-32 convert to UTF-16: 36.752 microseconds (400 allocations: 32000 bytes)
ASCII: Looping 100 times, length=256
length: 645 nanoseconds
is_valid_ascii: 13.239 milliseconds (5600 allocations: 62722 KB, 4.89% gc time)
Convert to UTF-8: 909 nanoseconds (100 allocations: 1600 bytes)
Convert to UTF-16: 15.466 microseconds (200 allocations: 64000 bytes)
Convert to UTF-32: 45.754 microseconds (200 allocations: 116 KB)
ASCII:: Looping 100 times, length=256
UTF-8: 256, UTF-16: 512, UTF-32: 1024
UTF-8 length: 21.062 microseconds
UTF-16 length: 9.796 microseconds
UTF-32 length: 564 nanoseconds
UTF-8 valid: 13.279 milliseconds (5700 allocations: 62723 KB, 4.51% gc time)
UTF-16 valid: 14.529 milliseconds (5600 allocations: 62722 KB, 4.05% gc time)
UTF-32 valid: 13.344 milliseconds (5600 allocations: 62722 KB, 3.41% gc time)
UTF-8 convert to UTF-16: 53.274 microseconds (200 allocations: 64000 bytes)
UTF-8 convert to UTF-32: 85.895 microseconds (200 allocations: 116 KB)
UTF-16 convert to UTF-8: 47.915 microseconds (200 allocations: 41600 bytes)
UTF-16 convert to UTF-32: 117.469 microseconds (200 allocations: 116 KB)
UTF-32 convert to UTF-8: 108.321 microseconds (400 allocations: 49600 bytes)
UTF-32 convert to UTF-16: 135.273 microseconds (400 allocations: 72000 bytes)
Latin1:: Looping 100 times, length=256
UTF-8: 336, UTF-16: 512, UTF-32: 1024
UTF-8 length: 22.557 microseconds
UTF-16 length: 10.024 microseconds
UTF-32 length: 550 nanoseconds
UTF-8 valid: 13.480 milliseconds (5700 allocations: 62723 KB, 4.82% gc time)
UTF-16 valid: 13.586 milliseconds (5600 allocations: 62722 KB, 5.34% gc time)
UTF-32 valid: 13.563 milliseconds (5600 allocations: 62722 KB, 4.27% gc time)
UTF-8 convert to UTF-16: 145.774 microseconds (200 allocations: 64000 bytes)
UTF-8 convert to UTF-32: 156.445 microseconds (200 allocations: 116 KB)
UTF-16 convert to UTF-8: 131.700 microseconds (200 allocations: 46400 bytes)
UTF-16 convert to UTF-32: 51.977 microseconds (200 allocations: 116 KB)
UTF-32 convert to UTF-8: 141.695 microseconds (400 allocations: 54400 bytes)
UTF-32 convert to UTF-16: 90.844 microseconds (400 allocations: 72000 bytes)
2-byte:: Looping 100 times, length=256
UTF-8: 336, UTF-16: 512, UTF-32: 1024
UTF-8 length: 13.211 microseconds
UTF-16 length: 10.132 microseconds
UTF-32 length: 466 nanoseconds
UTF-8 valid: 13.369 milliseconds (5700 allocations: 62723 KB, 3.56% gc time)
UTF-16 valid: 13.227 milliseconds (5600 allocations: 62722 KB, 4.52% gc time)
UTF-32 valid: 13.674 milliseconds (5600 allocations: 62722 KB, 5.14% gc time)
UTF-8 convert to UTF-16: 105.766 microseconds (200 allocations: 64000 bytes)
UTF-8 convert to UTF-32: 99.252 microseconds (200 allocations: 116 KB)
UTF-16 convert to UTF-8: 82.321 microseconds (200 allocations: 46400 bytes)
UTF-16 convert to UTF-32: 43.414 microseconds (200 allocations: 116 KB)
UTF-32 convert to UTF-8: 96.784 microseconds (400 allocations: 54400 bytes)
UTF-32 convert to UTF-16: 72.394 microseconds (400 allocations: 72000 bytes)
3-byte:: Looping 100 times, length=256
UTF-8: 368, UTF-16: 512, UTF-32: 1024
UTF-8 length: 14.307 microseconds
UTF-16 length: 12.488 microseconds
UTF-32 length: 562 nanoseconds
UTF-8 valid: 13.564 milliseconds (5700 allocations: 62723 KB, 4.72% gc time)
UTF-16 valid: 13.339 milliseconds (5600 allocations: 62722 KB, 4.17% gc time)
UTF-32 valid: 14.890 milliseconds (5600 allocations: 62722 KB, 2.70% gc time)
UTF-8 convert to UTF-16: 150.254 microseconds (200 allocations: 64000 bytes)
UTF-8 convert to UTF-32: 141.358 microseconds (200 allocations: 116 KB)
UTF-16 convert to UTF-8: 186.473 microseconds (200 allocations: 46400 bytes)
UTF-16 convert to UTF-32: 57.642 microseconds (200 allocations: 116 KB)
UTF-32 convert to UTF-8: 228.830 microseconds (400 allocations: 54400 bytes)
UTF-32 convert to UTF-16: 102.468 microseconds (400 allocations: 72000 bytes)
4-byte:: Looping 100 times, length=256
UTF-8: 416, UTF-16: 576, UTF-32: 1024
UTF-8 length: 22.441 microseconds
UTF-16 length: 15.322 microseconds
UTF-32 length: 740 nanoseconds
UTF-8 valid: 15.428 milliseconds (5700 allocations: 62723 KB, 6.88% gc time)
UTF-16 valid: 13.250 milliseconds (5600 allocations: 62722 KB, 4.79% gc time)
UTF-32 valid: 13.245 milliseconds (5600 allocations: 62722 KB, 4.76% gc time)
UTF-8 convert to UTF-16: 183.598 microseconds (200 allocations: 68800 bytes)
UTF-8 convert to UTF-32: 161.785 microseconds (200 allocations: 116 KB)
UTF-16 convert to UTF-8: 227.111 microseconds (200 allocations: 56000 bytes)
UTF-16 convert to UTF-32: 80.475 microseconds (200 allocations: 116 KB)
UTF-32 convert to UTF-8: 285.074 microseconds (400 allocations: 64000 bytes)
UTF-32 convert to UTF-16: 137.477 microseconds (400 allocations: 76800 bytes)
Surrogates:: Looping 100 times, length=256
UTF-8: 480, UTF-16: 576, UTF-32: 1024
UTF-8 length: 29.064 microseconds
UTF-16 length: 21.370 microseconds
UTF-32 length: 495 nanoseconds
UTF-8 valid: 13.994 milliseconds (5700 allocations: 62723 KB, 5.43% gc time)
UTF-16 valid: 13.406 milliseconds (5600 allocations: 62722 KB, 3.07% gc time)
UTF-32 valid: 13.726 milliseconds (5600 allocations: 62722 KB, 5.12% gc time)
UTF-8 convert to UTF-16: 173.445 microseconds (200 allocations: 68800 bytes)
UTF-8 convert to UTF-32: 165.035 microseconds (200 allocations: 116 KB)
UTF-16 convert to UTF-8: 222.371 microseconds (200 allocations: 56000 bytes)
UTF-16 convert to UTF-32: 80.312 microseconds (200 allocations: 116 KB)
UTF-32 convert to UTF-8: 246.369 microseconds (400 allocations: 64000 bytes)
UTF-32 convert to UTF-16: 101.281 microseconds (400 allocations: 76800 bytes)
ASCII: Looping 100 times, length=1024
length: 1.217 microseconds (100 allocations: 1600 bytes)
is_valid_ascii: 13.783 milliseconds (5600 allocations: 62722 KB, 5.64% gc time)
Convert to UTF-8: 994 nanoseconds (100 allocations: 1600 bytes)
Convert to UTF-16: 32.975 microseconds (100 allocations: 211 KB)
Convert to UTF-32: 46.685 microseconds (100 allocations: 411 KB)
ASCII:: Looping 100 times, length=1024
UTF-8: 1024, UTF-16: 2048, UTF-32: 4096
UTF-8 length: 39.428 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 35.374 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.338 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 13.663 milliseconds (5700 allocations: 62723 KB, 4.91% gc time)
UTF-16 valid: 16.815 milliseconds (5600 allocations: 62722 KB, 3.92% gc time)
UTF-32 valid: 17.265 milliseconds (5600 allocations: 62722 KB, 2.55% gc time)
UTF-8 convert to UTF-16: 264.133 microseconds (100 allocations: 211 KB)
UTF-8 convert to UTF-32: 279.392 microseconds (100 allocations: 411 KB)
UTF-16 convert to UTF-8: 177.399 microseconds (200 allocations: 116 KB)
UTF-16 convert to UTF-32: 283.063 microseconds (100 allocations: 411 KB)
UTF-32 convert to UTF-8: 368.597 microseconds (400 allocations: 123 KB)
UTF-32 convert to UTF-16: 366.129 microseconds (300 allocations: 219 KB)
Latin1:: Looping 100 times, length=1024
UTF-8: 1344, UTF-16: 2048, UTF-32: 4096
UTF-8 length: 68.841 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 55.937 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.920 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 15.109 milliseconds (5700 allocations: 62723 KB, 5.63% gc time)
UTF-16 valid: 13.168 milliseconds (5600 allocations: 62722 KB, 4.36% gc time)
UTF-32 valid: 13.279 milliseconds (5600 allocations: 62722 KB, 4.43% gc time)
UTF-8 convert to UTF-16: 483.124 microseconds (100 allocations: 211 KB)
UTF-8 convert to UTF-32: 414.202 microseconds (100 allocations: 411 KB)
UTF-16 convert to UTF-8: 383.207 microseconds (200 allocations: 147 KB)
UTF-16 convert to UTF-32: 350.890 microseconds (100 allocations: 411 KB)
UTF-32 convert to UTF-8: 446.122 microseconds (400 allocations: 155 KB)
UTF-32 convert to UTF-16: 367.343 microseconds (300 allocations: 219 KB)
2-byte:: Looping 100 times, length=1024
UTF-8: 1344, UTF-16: 2048, UTF-32: 4096
UTF-8 length: 50.291 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 36.024 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 982 nanoseconds (100 allocations: 1600 bytes)
UTF-8 valid: 13.951 milliseconds (5700 allocations: 62723 KB, 5.45% gc time)
UTF-16 valid: 13.216 milliseconds (5600 allocations: 62722 KB, 3.30% gc time)
UTF-32 valid: 17.595 milliseconds (5600 allocations: 62722 KB, 4.95% gc time)
UTF-8 convert to UTF-16: 457.590 microseconds (100 allocations: 211 KB)
UTF-8 convert to UTF-32: 440.088 microseconds (100 allocations: 411 KB)
UTF-16 convert to UTF-8: 345.602 microseconds (200 allocations: 147 KB)
UTF-16 convert to UTF-32: 252.041 microseconds (100 allocations: 411 KB)
UTF-32 convert to UTF-8: 363.059 microseconds (400 allocations: 155 KB)
UTF-32 convert to UTF-16: 410.896 microseconds (300 allocations: 219 KB)
3-byte:: Looping 100 times, length=1024
UTF-8: 1472, UTF-16: 2048, UTF-32: 4096
UTF-8 length: 59.247 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 36.476 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.452 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 14.170 milliseconds (5700 allocations: 62723 KB, 5.58% gc time)
UTF-16 valid: 14.254 milliseconds (5600 allocations: 62722 KB, 5.39% gc time)
UTF-32 valid: 13.712 milliseconds (5600 allocations: 62722 KB, 4.56% gc time)
UTF-8 convert to UTF-16: 454.945 microseconds (100 allocations: 211 KB)
UTF-8 convert to UTF-32: 428.686 microseconds (100 allocations: 411 KB)
UTF-16 convert to UTF-8: 609.525 microseconds (200 allocations: 161 KB)
UTF-16 convert to UTF-32: 215.227 microseconds (100 allocations: 411 KB)
UTF-32 convert to UTF-8: 711.199 microseconds (400 allocations: 169 KB)
UTF-32 convert to UTF-16: 333.629 microseconds (300 allocations: 219 KB)
4-byte:: Looping 100 times, length=1024
UTF-8: 1664, UTF-16: 2304, UTF-32: 4096
UTF-8 length: 101.753 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 58.536 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.212 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 14.103 milliseconds (5700 allocations: 62723 KB, 5.57% gc time)
UTF-16 valid: 15.889 milliseconds (5600 allocations: 62722 KB, 3.19% gc time)
UTF-32 valid: 13.368 milliseconds (5600 allocations: 62722 KB, 4.39% gc time)
UTF-8 convert to UTF-16: 463.270 microseconds (100 allocations: 236 KB)
UTF-8 convert to UTF-32: 522.733 microseconds (100 allocations: 411 KB)
UTF-16 convert to UTF-8: 792.836 microseconds (200 allocations: 178 KB)
UTF-16 convert to UTF-32: 454.822 microseconds (100 allocations: 411 KB)
UTF-32 convert to UTF-8: 878.628 microseconds (400 allocations: 186 KB)
UTF-32 convert to UTF-16: 436.517 microseconds (300 allocations: 244 KB)
Surrogates:: Looping 100 times, length=1024
UTF-8: 1920, UTF-16: 2304, UTF-32: 4096
UTF-8 length: 110.128 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 68.330 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.361 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 14.918 milliseconds (5700 allocations: 62723 KB, 6.04% gc time)
UTF-16 valid: 14.102 milliseconds (5600 allocations: 62722 KB, 5.06% gc time)
UTF-32 valid: 13.545 milliseconds (5600 allocations: 62722 KB, 4.74% gc time)
UTF-8 convert to UTF-16: 553.204 microseconds (100 allocations: 236 KB)
UTF-8 convert to UTF-32: 514.665 microseconds (100 allocations: 411 KB)
UTF-16 convert to UTF-8: 682.877 microseconds (200 allocations: 178 KB)
UTF-16 convert to UTF-32: 237.146 microseconds (100 allocations: 411 KB)
UTF-32 convert to UTF-8: 766.614 microseconds (400 allocations: 186 KB)
UTF-32 convert to UTF-16: 304.624 microseconds (300 allocations: 244 KB)
ASCII: Looping 100 times, length=4096
length: 1.943 microseconds (100 allocations: 1600 bytes)
is_valid_ascii: 13.994 milliseconds (5600 allocations: 62722 KB, 4.73% gc time)
Convert to UTF-8: 1.261 microseconds (100 allocations: 1600 bytes)
Convert to UTF-16: 79.342 microseconds (100 allocations: 811 KB)
Convert to UTF-32: 150.067 microseconds (300 allocations: 1609 KB)
ASCII:: Looping 100 times, length=4096
UTF-8: 4096, UTF-16: 8192, UTF-32: 16384
UTF-8 length: 145.896 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 133.151 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.579 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 13.893 milliseconds (5700 allocations: 62723 KB, 5.18% gc time)
UTF-16 valid: 13.799 milliseconds (5600 allocations: 62722 KB, 4.58% gc time)
UTF-32 valid: 13.498 milliseconds (5600 allocations: 62722 KB, 4.29% gc time)
UTF-8 convert to UTF-16: 883.562 microseconds (100 allocations: 811 KB)
UTF-8 convert to UTF-32: 844.984 microseconds (300 allocations: 1609 KB)
UTF-16 convert to UTF-8: 659.330 microseconds (100 allocations: 411 KB)
UTF-16 convert to UTF-32: 910.219 microseconds (300 allocations: 1609 KB)
UTF-32 convert to UTF-8: 1.102 milliseconds (300 allocations: 419 KB)
UTF-32 convert to UTF-16: 1.301 milliseconds (300 allocations: 819 KB)
Latin1:: Looping 100 times, length=4096
UTF-8: 5376, UTF-16: 8192, UTF-32: 16384
UTF-8 length: 191.062 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 162.641 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.581 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 14.408 milliseconds (5700 allocations: 62723 KB, 5.68% gc time)
UTF-16 valid: 13.813 milliseconds (5600 allocations: 62722 KB, 4.38% gc time)
UTF-32 valid: 13.446 milliseconds (5600 allocations: 62722 KB, 2.93% gc time)
UTF-8 convert to UTF-16: 1.793 milliseconds (100 allocations: 811 KB)
UTF-8 convert to UTF-32: 1.875 milliseconds (300 allocations: 1609 KB, 19.50% gc time)
UTF-16 convert to UTF-8: 1.144 milliseconds (100 allocations: 536 KB)
UTF-16 convert to UTF-32: 514.828 microseconds (300 allocations: 1609 KB)
UTF-32 convert to UTF-8: 1.384 milliseconds (300 allocations: 544 KB)
UTF-32 convert to UTF-16: 995.728 microseconds (300 allocations: 819 KB)
2-byte:: Looping 100 times, length=4096
UTF-8: 5376, UTF-16: 8192, UTF-32: 16384
UTF-8 length: 191.362 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 128.400 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.325 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 14.105 milliseconds (5700 allocations: 62723 KB, 4.77% gc time)
UTF-16 valid: 13.753 milliseconds (5600 allocations: 62722 KB, 3.20% gc time)
UTF-32 valid: 13.717 milliseconds (5600 allocations: 62722 KB, 5.12% gc time)
UTF-8 convert to UTF-16: 1.832 milliseconds (100 allocations: 811 KB)
UTF-8 convert to UTF-32: 2.045 milliseconds (300 allocations: 1609 KB)
UTF-16 convert to UTF-8: 1.436 milliseconds (100 allocations: 536 KB)
UTF-16 convert to UTF-32: 1.054 milliseconds (300 allocations: 1609 KB)
UTF-32 convert to UTF-8: 1.676 milliseconds (300 allocations: 544 KB)
UTF-32 convert to UTF-16: 1.302 milliseconds (300 allocations: 819 KB)
3-byte:: Looping 100 times, length=4096
UTF-8: 5888, UTF-16: 8192, UTF-32: 16384
UTF-8 length: 209.646 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 149.792 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.280 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 14.432 milliseconds (5700 allocations: 62723 KB, 5.75% gc time)
UTF-16 valid: 13.547 milliseconds (5600 allocations: 62722 KB, 4.49% gc time)
UTF-32 valid: 15.680 milliseconds (5600 allocations: 62722 KB, 5.16% gc time)
UTF-8 convert to UTF-16: 1.628 milliseconds (100 allocations: 811 KB)
UTF-8 convert to UTF-32: 1.912 milliseconds (300 allocations: 1609 KB)
UTF-16 convert to UTF-8: 2.208 milliseconds (100 allocations: 586 KB)
UTF-16 convert to UTF-32: 989.748 microseconds (300 allocations: 1609 KB)
UTF-32 convert to UTF-8: 2.569 milliseconds (300 allocations: 594 KB)
UTF-32 convert to UTF-16: 1.365 milliseconds (300 allocations: 819 KB)
4-byte:: Looping 100 times, length=4096
UTF-8: 6656, UTF-16: 9216, UTF-32: 16384
UTF-8 length: 256.343 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 195.870 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.319 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 14.378 milliseconds (5700 allocations: 62723 KB, 6.54% gc time)
UTF-16 valid: 13.863 milliseconds (5600 allocations: 62722 KB, 4.43% gc time)
UTF-32 valid: 13.697 milliseconds (5600 allocations: 62722 KB, 3.72% gc time)
UTF-8 convert to UTF-16: 1.682 milliseconds (100 allocations: 911 KB)
UTF-8 convert to UTF-32: 1.527 milliseconds (300 allocations: 1609 KB)
UTF-16 convert to UTF-8: 2.629 milliseconds (100 allocations: 661 KB)
UTF-16 convert to UTF-32: 1.180 milliseconds (300 allocations: 1609 KB, 24.03% gc time)
UTF-32 convert to UTF-8: 2.920 milliseconds (300 allocations: 669 KB)
UTF-32 convert to UTF-16: 1.121 milliseconds (300 allocations: 919 KB)
Surrogates:: Looping 100 times, length=4096
UTF-8: 7680, UTF-16: 9216, UTF-32: 16384
UTF-8 length: 318.234 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 215.643 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.108 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 13.649 milliseconds (5700 allocations: 62723 KB, 3.89% gc time)
UTF-16 valid: 13.579 milliseconds (5600 allocations: 62722 KB, 4.27% gc time)
UTF-32 valid: 14.260 milliseconds (5600 allocations: 62722 KB, 5.76% gc time)
UTF-8 convert to UTF-16: 1.931 milliseconds (100 allocations: 911 KB)
UTF-8 convert to UTF-32: 1.770 milliseconds (300 allocations: 1609 KB)
UTF-16 convert to UTF-8: 2.576 milliseconds (100 allocations: 661 KB)
UTF-16 convert to UTF-32: 871.517 microseconds (300 allocations: 1609 KB)
UTF-32 convert to UTF-8: 3.057 milliseconds (300 allocations: 669 KB)
UTF-32 convert to UTF-16: 1.234 milliseconds (300 allocations: 919 KB)
ASCII: Looping 100 times, length=16384
length: 1.416 microseconds (100 allocations: 1600 bytes)
is_valid_ascii: 14.071 milliseconds (5600 allocations: 62722 KB, 5.55% gc time)
Convert to UTF-8: 10.263 microseconds (100 allocations: 1600 bytes)
Convert to UTF-16: 995.786 microseconds (300 allocations: 3209 KB)
Convert to UTF-32: 2.154 milliseconds (300 allocations: 6409 KB)
ASCII:: Looping 100 times, length=16384
UTF-8: 16384, UTF-16: 32768, UTF-32: 65536
UTF-8 length: 620.120 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 559.224 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.640 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 18.661 milliseconds (5700 allocations: 62723 KB, 9.00% gc time)
UTF-16 valid: 16.960 milliseconds (5600 allocations: 62722 KB, 4.50% gc time)
UTF-32 valid: 13.961 milliseconds (5600 allocations: 62722 KB, 4.41% gc time)
UTF-8 convert to UTF-16: 2.940 milliseconds (300 allocations: 3209 KB)
UTF-8 convert to UTF-32: 4.481 milliseconds (300 allocations: 6409 KB)
UTF-16 convert to UTF-8: 1.965 milliseconds (300 allocations: 1609 KB)
UTF-16 convert to UTF-32: 3.121 milliseconds (300 allocations: 6409 KB, 18.63% gc time)
UTF-32 convert to UTF-8: 3.735 milliseconds (500 allocations: 1617 KB)
UTF-32 convert to UTF-16: 4.701 milliseconds (500 allocations: 3217 KB)
Latin1:: Looping 100 times, length=16384
UTF-8: 21504, UTF-16: 32768, UTF-32: 65536
UTF-8 length: 872.271 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 873.533 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.672 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 16.192 milliseconds (5700 allocations: 62723 KB, 4.76% gc time)
UTF-16 valid: 14.269 milliseconds (5600 allocations: 62722 KB, 3.18% gc time)
UTF-32 valid: 14.517 milliseconds (5600 allocations: 62722 KB, 5.23% gc time)
UTF-8 convert to UTF-16: 6.147 milliseconds (300 allocations: 3209 KB)
UTF-8 convert to UTF-32: 6.678 milliseconds (300 allocations: 6409 KB, 4.84% gc time)
UTF-16 convert to UTF-8: 4.348 milliseconds (300 allocations: 2109 KB)
UTF-16 convert to UTF-32: 3.293 milliseconds (300 allocations: 6409 KB)
UTF-32 convert to UTF-8: 5.491 milliseconds (500 allocations: 2117 KB)
UTF-32 convert to UTF-16: 4.122 milliseconds (500 allocations: 3217 KB)
2-byte:: Looping 100 times, length=16384
UTF-8: 21504, UTF-16: 32768, UTF-32: 65536
UTF-8 length: 853.016 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 568.079 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.735 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 17.230 milliseconds (5700 allocations: 62723 KB, 13.65% gc time)
UTF-16 valid: 14.665 milliseconds (5600 allocations: 62722 KB, 4.63% gc time)
UTF-32 valid: 14.130 milliseconds (5600 allocations: 62722 KB, 4.28% gc time)
UTF-8 convert to UTF-16: 6.828 milliseconds (300 allocations: 3209 KB)
UTF-8 convert to UTF-32: 8.184 milliseconds (300 allocations: 6409 KB)
UTF-16 convert to UTF-8: 6.099 milliseconds (300 allocations: 2109 KB)
UTF-16 convert to UTF-32: 2.491 milliseconds (300 allocations: 6409 KB)
UTF-32 convert to UTF-8: 6.148 milliseconds (500 allocations: 2117 KB)
UTF-32 convert to UTF-16: 5.426 milliseconds (500 allocations: 3217 KB, 27.45% gc time)
3-byte:: Looping 100 times, length=16384
UTF-8: 23552, UTF-16: 32768, UTF-32: 65536
UTF-8 length: 864.219 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 540.516 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 965 nanoseconds (100 allocations: 1600 bytes)
UTF-8 valid: 14.625 milliseconds (5700 allocations: 62723 KB, 3.41% gc time)
UTF-16 valid: 14.939 milliseconds (5600 allocations: 62722 KB, 4.94% gc time)
UTF-32 valid: 14.154 milliseconds (5600 allocations: 62722 KB, 4.66% gc time)
UTF-8 convert to UTF-16: 6.303 milliseconds (300 allocations: 3209 KB)
UTF-8 convert to UTF-32: 6.473 milliseconds (300 allocations: 6409 KB)
UTF-16 convert to UTF-8: 8.923 milliseconds (300 allocations: 2309 KB, 9.80% gc time)
UTF-16 convert to UTF-32: 2.204 milliseconds (300 allocations: 6409 KB)
UTF-32 convert to UTF-8: 9.786 milliseconds (500 allocations: 2317 KB)
UTF-32 convert to UTF-16: 3.888 milliseconds (500 allocations: 3217 KB)
4-byte:: Looping 100 times, length=16384
UTF-8: 26624, UTF-16: 36864, UTF-32: 65536
UTF-8 length: 994.788 microseconds (100 allocations: 1600 bytes)
UTF-16 length: 669.995 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 3.451 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 15.759 milliseconds (5700 allocations: 62723 KB, 5.04% gc time)
UTF-16 valid: 14.873 milliseconds (5600 allocations: 62722 KB, 3.97% gc time)
UTF-32 valid: 14.319 milliseconds (5600 allocations: 62722 KB, 3.70% gc time)
UTF-8 convert to UTF-16: 6.991 milliseconds (300 allocations: 3609 KB, 3.51% gc time)
UTF-8 convert to UTF-32: 6.773 milliseconds (300 allocations: 6409 KB)
UTF-16 convert to UTF-8: 11.055 milliseconds (300 allocations: 2609 KB)
UTF-16 convert to UTF-32: 4.243 milliseconds (300 allocations: 6409 KB)
UTF-32 convert to UTF-8: 12.705 milliseconds (500 allocations: 2617 KB)
UTF-32 convert to UTF-16: 8.239 milliseconds (500 allocations: 3617 KB, 24.39% gc time)
Surrogates:: Looping 100 times, length=16384
UTF-8: 30720, UTF-16: 36864, UTF-32: 65536
UTF-8 length: 1.257 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 679.769 microseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.394 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 13.751 milliseconds (5700 allocations: 62723 KB, 3.83% gc time)
UTF-16 valid: 14.920 milliseconds (5600 allocations: 62722 KB, 3.82% gc time)
UTF-32 valid: 14.468 milliseconds (5600 allocations: 62722 KB, 4.97% gc time)
UTF-8 convert to UTF-16: 7.633 milliseconds (300 allocations: 3609 KB)
UTF-8 convert to UTF-32: 9.235 milliseconds (300 allocations: 6409 KB)
UTF-16 convert to UTF-8: 10.309 milliseconds (300 allocations: 2609 KB)
UTF-16 convert to UTF-32: 4.320 milliseconds (300 allocations: 6409 KB, 21.19% gc time)
UTF-32 convert to UTF-8: 11.795 milliseconds (500 allocations: 2617 KB)
UTF-32 convert to UTF-16: 5.211 milliseconds (500 allocations: 3617 KB)
ASCII: Looping 100 times, length=65536
length: 2.464 microseconds (100 allocations: 1600 bytes)
is_valid_ascii: 17.732 milliseconds (5600 allocations: 62722 KB, 7.00% gc time)
Convert to UTF-8: 962 nanoseconds (100 allocations: 1600 bytes)
Convert to UTF-16: 5.547 milliseconds (300 allocations: 12809 KB)
Convert to UTF-32: 11.213 milliseconds (300 allocations: 25609 KB, 21.10% gc time)
ASCII:: Looping 100 times, length=65536
UTF-8: 65536, UTF-16: 131072, UTF-32: 262144
UTF-8 length: 4.866 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 2.826 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.048 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 20.693 milliseconds (5700 allocations: 62723 KB, 7.10% gc time)
UTF-16 valid: 18.483 milliseconds (5600 allocations: 62722 KB, 3.74% gc time)
UTF-32 valid: 19.037 milliseconds (5600 allocations: 62722 KB, 4.80% gc time)
UTF-8 convert to UTF-16: 17.594 milliseconds (300 allocations: 12809 KB, 6.26% gc time)
UTF-8 convert to UTF-32: 22.069 milliseconds (300 allocations: 25609 KB, 7.38% gc time)
UTF-16 convert to UTF-8: 7.893 milliseconds (300 allocations: 6409 KB)
UTF-16 convert to UTF-32: 14.059 milliseconds (300 allocations: 25609 KB, 10.31% gc time)
UTF-32 convert to UTF-8: 15.323 milliseconds (500 allocations: 6417 KB)
UTF-32 convert to UTF-16: 22.647 milliseconds (500 allocations: 12817 KB, 5.47% gc time)
Latin1:: Looping 100 times, length=65536
UTF-8: 86016, UTF-16: 131072, UTF-32: 262144
UTF-8 length: 3.244 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 2.531 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.047 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 20.414 milliseconds (5700 allocations: 62723 KB, 9.26% gc time)
UTF-16 valid: 19.024 milliseconds (5600 allocations: 62722 KB, 4.06% gc time)
UTF-32 valid: 16.106 milliseconds (5600 allocations: 62722 KB, 2.86% gc time)
UTF-8 convert to UTF-16: 30.320 milliseconds (300 allocations: 12809 KB, 2.01% gc time)
UTF-8 convert to UTF-32: 34.296 milliseconds (300 allocations: 25609 KB, 5.19% gc time)
UTF-16 convert to UTF-8: 18.993 milliseconds (300 allocations: 8409 KB)
UTF-16 convert to UTF-32: 17.734 milliseconds (300 allocations: 25609 KB, 16.67% gc time)
UTF-32 convert to UTF-8: 22.050 milliseconds (500 allocations: 8417 KB)
UTF-32 convert to UTF-16: 20.288 milliseconds (500 allocations: 12817 KB)
2-byte:: Looping 100 times, length=65536
UTF-8: 86016, UTF-16: 131072, UTF-32: 262144
UTF-8 length: 3.225 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 2.306 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.528 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 21.533 milliseconds (5700 allocations: 62723 KB, 12.33% gc time)
UTF-16 valid: 19.032 milliseconds (5600 allocations: 62722 KB, 4.21% gc time)
UTF-32 valid: 16.396 milliseconds (5600 allocations: 62722 KB, 3.97% gc time)
UTF-8 convert to UTF-16: 30.326 milliseconds (300 allocations: 12809 KB)
UTF-8 convert to UTF-32: 35.101 milliseconds (300 allocations: 25609 KB, 8.35% gc time)
UTF-16 convert to UTF-8: 18.544 milliseconds (300 allocations: 8409 KB)
UTF-16 convert to UTF-32: 15.256 milliseconds (300 allocations: 25609 KB, 5.18% gc time)
UTF-32 convert to UTF-8: 22.195 milliseconds (500 allocations: 8417 KB)
UTF-32 convert to UTF-16: 21.739 milliseconds (500 allocations: 12817 KB, 7.11% gc time)
3-byte:: Looping 100 times, length=65536
UTF-8: 94208, UTF-16: 131072, UTF-32: 262144
UTF-8 length: 3.441 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 2.073 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.965 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 23.332 milliseconds (5700 allocations: 62723 KB, 9.61% gc time)
UTF-16 valid: 19.595 milliseconds (5600 allocations: 62722 KB, 3.59% gc time)
UTF-32 valid: 15.742 milliseconds (5600 allocations: 62722 KB, 2.53% gc time)
UTF-8 convert to UTF-16: 31.321 milliseconds (300 allocations: 12809 KB, 2.00% gc time)
UTF-8 convert to UTF-32: 33.859 milliseconds (300 allocations: 25609 KB, 5.20% gc time)
UTF-16 convert to UTF-8: 32.315 milliseconds (300 allocations: 9209 KB)
UTF-16 convert to UTF-32: 16.866 milliseconds (300 allocations: 25609 KB, 15.06% gc time)
UTF-32 convert to UTF-8: 38.973 milliseconds (500 allocations: 9217 KB)
UTF-32 convert to UTF-16: 20.774 milliseconds (500 allocations: 12817 KB, 7.14% gc time)
4-byte:: Looping 100 times, length=65536
UTF-8: 106496, UTF-16: 147456, UTF-32: 262144
UTF-8 length: 3.738 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 2.337 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.510 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 24 milliseconds (5700 allocations: 62723 KB, 4.60% gc time)
UTF-16 valid: 20.506 milliseconds (5600 allocations: 62722 KB, 3.45% gc time)
UTF-32 valid: 16.018 milliseconds (5600 allocations: 62722 KB, 3.66% gc time)
UTF-8 convert to UTF-16: 34.042 milliseconds (300 allocations: 14409 KB, 3.48% gc time)
UTF-8 convert to UTF-32: 34.400 milliseconds (300 allocations: 25609 KB, 4.22% gc time)
UTF-16 convert to UTF-8: 41.629 milliseconds (300 allocations: 10409 KB)
UTF-16 convert to UTF-32: 22.812 milliseconds (300 allocations: 25609 KB, 5.47% gc time)
UTF-32 convert to UTF-8: 48.518 milliseconds (500 allocations: 10417 KB, 3.07% gc time)
UTF-32 convert to UTF-16: 21.931 milliseconds (500 allocations: 14417 KB)
Surrogates:: Looping 100 times, length=65536
UTF-8: 122880, UTF-16: 147456, UTF-32: 262144
UTF-8 length: 4.472 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 2.298 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 16.104 milliseconds (5700 allocations: 62723 KB, 13.84% gc time)
UTF-16 valid: 21.551 milliseconds (5600 allocations: 62722 KB, 3.24% gc time)
UTF-32 valid: 18.796 milliseconds (5600 allocations: 62722 KB, 3.38% gc time)
UTF-8 convert to UTF-16: 38.281 milliseconds (300 allocations: 14409 KB)
UTF-8 convert to UTF-32: 39.734 milliseconds (300 allocations: 25609 KB, 7.73% gc time)
UTF-16 convert to UTF-8: 45.355 milliseconds (300 allocations: 10409 KB)
UTF-16 convert to UTF-32: 20.928 milliseconds (300 allocations: 25609 KB, 3.68% gc time)
UTF-32 convert to UTF-8: 48.405 milliseconds (500 allocations: 10417 KB, 2.49% gc time)
UTF-32 convert to UTF-16: 21.829 milliseconds (500 allocations: 14417 KB)
ASCII: Looping 100 times, length=262144
length: 1.309 microseconds (100 allocations: 1600 bytes)
is_valid_ascii: 26.309 milliseconds (5600 allocations: 62722 KB, 4.35% gc time)
Convert to UTF-8: 880 nanoseconds (100 allocations: 1600 bytes)
Convert to UTF-16: 16.590 milliseconds (300 allocations: 51209 KB, 10.46% gc time)
Convert to UTF-32: 24.437 milliseconds (300 allocations: 100 MB, 12.14% gc time)
ASCII:: Looping 100 times, length=262144
UTF-8: 262144, UTF-16: 524288, UTF-32: 1048576
UTF-8 length: 9.181 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 7.995 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.552 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 26.908 milliseconds (5700 allocations: 62723 KB, 6.15% gc time)
UTF-16 valid: 31.232 milliseconds (5600 allocations: 62722 KB, 3.01% gc time)
UTF-32 valid: 25.074 milliseconds (5600 allocations: 62722 KB, 4.19% gc time)
UTF-8 convert to UTF-16: 65.513 milliseconds (300 allocations: 51209 KB, 3.92% gc time)
UTF-8 convert to UTF-32: 75.035 milliseconds (300 allocations: 100 MB, 5.49% gc time)
UTF-16 convert to UTF-8: 42.112 milliseconds (300 allocations: 25609 KB, 8.72% gc time)
UTF-16 convert to UTF-32: 40.112 milliseconds (300 allocations: 100 MB, 8.93% gc time)
UTF-32 convert to UTF-8: 69.756 milliseconds (500 allocations: 25617 KB, 1.53% gc time)
UTF-32 convert to UTF-16: 82.773 milliseconds (500 allocations: 51217 KB, 6.12% gc time)
Latin1:: Looping 100 times, length=262144
UTF-8: 344064, UTF-16: 524288, UTF-32: 1048576
UTF-8 length: 12.228 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 8.065 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.565 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 35.263 milliseconds (5700 allocations: 62723 KB, 3.81% gc time)
UTF-16 valid: 30.751 milliseconds (5600 allocations: 62722 KB, 2.44% gc time)
UTF-32 valid: 25.399 milliseconds (5600 allocations: 62722 KB, 3.50% gc time)
UTF-8 convert to UTF-16: 116.063 milliseconds (300 allocations: 51209 KB, 1.90% gc time)
UTF-8 convert to UTF-32: 114.978 milliseconds (300 allocations: 100 MB, 4.29% gc time)
UTF-16 convert to UTF-8: 85.804 milliseconds (300 allocations: 33609 KB, 2.27% gc time)
UTF-16 convert to UTF-32: 45.999 milliseconds (300 allocations: 100 MB, 8.92% gc time)
UTF-32 convert to UTF-8: 103.835 milliseconds (500 allocations: 33617 KB, 1.94% gc time)
UTF-32 convert to UTF-16: 78.617 milliseconds (500 allocations: 51217 KB, 3.85% gc time)
2-byte:: Looping 100 times, length=262144
UTF-8: 344064, UTF-16: 524288, UTF-32: 1048576
UTF-8 length: 12.028 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 8.003 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.281 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 35.597 milliseconds (5700 allocations: 62723 KB, 7.50% gc time)
UTF-16 valid: 30.276 milliseconds (5600 allocations: 62722 KB, 2.17% gc time)
UTF-32 valid: 25.546 milliseconds (5600 allocations: 62722 KB, 3.34% gc time)
UTF-8 convert to UTF-16: 116.228 milliseconds (300 allocations: 51209 KB, 2.04% gc time)
UTF-8 convert to UTF-32: 115.625 milliseconds (300 allocations: 100 MB, 4.14% gc time)
UTF-16 convert to UTF-8: 86.082 milliseconds (300 allocations: 33609 KB, 2.73% gc time)
UTF-16 convert to UTF-32: 51.816 milliseconds (300 allocations: 100 MB, 8.77% gc time)
UTF-32 convert to UTF-8: 103.773 milliseconds (500 allocations: 33617 KB, 2.28% gc time)
UTF-32 convert to UTF-16: 84.507 milliseconds (500 allocations: 51217 KB, 4.55% gc time)
3-byte:: Looping 100 times, length=262144
UTF-8: 376832, UTF-16: 524288, UTF-32: 1048576
UTF-8 length: 13.260 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 7.983 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.764 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 38.347 milliseconds (5700 allocations: 62723 KB, 6.19% gc time)
UTF-16 valid: 30.687 milliseconds (5600 allocations: 62722 KB, 2.20% gc time)
UTF-32 valid: 24.734 milliseconds (5600 allocations: 62722 KB, 3.18% gc time)
UTF-8 convert to UTF-16: 117.738 milliseconds (300 allocations: 51209 KB, 2.06% gc time)
UTF-8 convert to UTF-32: 124.715 milliseconds (300 allocations: 100 MB, 3.89% gc time)
UTF-16 convert to UTF-8: 142.656 milliseconds (300 allocations: 36809 KB, 1.73% gc time)
UTF-16 convert to UTF-32: 49.918 milliseconds (300 allocations: 100 MB, 8.69% gc time)
UTF-32 convert to UTF-8: 167.440 milliseconds (500 allocations: 36817 KB, 1.24% gc time)
UTF-32 convert to UTF-16: 90.425 milliseconds (500 allocations: 51217 KB, 4.99% gc time)
4-byte:: Looping 100 times, length=262144
UTF-8: 425984, UTF-16: 589824, UTF-32: 1048576
UTF-8 length: 15.046 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 10.395 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 3.074 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 40.271 milliseconds (5700 allocations: 62723 KB, 3.58% gc time)
UTF-16 valid: 41.573 milliseconds (5600 allocations: 62722 KB, 1.69% gc time)
UTF-32 valid: 23.985 milliseconds (5600 allocations: 62722 KB, 3.12% gc time)
UTF-8 convert to UTF-16: 127.730 milliseconds (300 allocations: 57609 KB, 2.75% gc time)
UTF-8 convert to UTF-32: 113.635 milliseconds (300 allocations: 100 MB, 3.51% gc time)
UTF-16 convert to UTF-8: 183.244 milliseconds (300 allocations: 41609 KB, 1.82% gc time)
UTF-16 convert to UTF-32: 75.624 milliseconds (300 allocations: 100 MB, 5.20% gc time)
UTF-32 convert to UTF-8: 203.135 milliseconds (500 allocations: 41617 KB, 1.64% gc time)
UTF-32 convert to UTF-16: 87.689 milliseconds (500 allocations: 57617 KB, 4.39% gc time)
Surrogates:: Looping 100 times, length=262144
UTF-8: 491520, UTF-16: 589824, UTF-32: 1048576
UTF-8 length: 17.325 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 9.173 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.697 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 15.671 milliseconds (5700 allocations: 62723 KB, 10.95% gc time)
UTF-16 valid: 41.712 milliseconds (5600 allocations: 62722 KB, 1.20% gc time)
UTF-32 valid: 24.535 milliseconds (5600 allocations: 62722 KB, 3.20% gc time)
UTF-8 convert to UTF-16: 140.022 milliseconds (300 allocations: 57609 KB, 2.19% gc time)
UTF-8 convert to UTF-32: 130.478 milliseconds (300 allocations: 100 MB, 3.25% gc time)
UTF-16 convert to UTF-8: 184.399 milliseconds (300 allocations: 41609 KB, 1.96% gc time)
UTF-16 convert to UTF-32: 75.659 milliseconds (300 allocations: 100 MB, 6.50% gc time)
UTF-32 convert to UTF-8: 202.510 milliseconds (500 allocations: 41617 KB, 1.09% gc time)
UTF-32 convert to UTF-16: 91.629 milliseconds (500 allocations: 57617 KB, 5.41% gc time)
ASCII: Looping 100 times, length=1048576
length: 1.787 microseconds (100 allocations: 1600 bytes)
is_valid_ascii: 97.063 milliseconds (5600 allocations: 62722 KB, 39.13% gc time)
Convert to UTF-8: 10.762 microseconds (100 allocations: 1600 bytes)
Convert to UTF-16: 45.890 milliseconds (300 allocations: 200 MB, 33.62% gc time)
Convert to UTF-32: 85.310 milliseconds (300 allocations: 400 MB, 28.69% gc time)
ASCII:: Looping 100 times, length=1048576
UTF-8: 1048576, UTF-16: 2097152, UTF-32: 4194304
UTF-8 length: 37.100 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 32.852 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.743 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 64.703 milliseconds (5700 allocations: 62723 KB, 7.69% gc time)
UTF-16 valid: 86.239 milliseconds (5600 allocations: 62722 KB, 1.12% gc time)
UTF-32 valid: 58.543 milliseconds (5600 allocations: 62722 KB, 1.37% gc time)
UTF-8 convert to UTF-16: 228.581 milliseconds (300 allocations: 200 MB, 4.69% gc time)
UTF-8 convert to UTF-32: 265.645 milliseconds (300 allocations: 400 MB, 9.45% gc time)
UTF-16 convert to UTF-8: 146.988 milliseconds (300 allocations: 100 MB, 7.04% gc time)
UTF-16 convert to UTF-32: 129.339 milliseconds (300 allocations: 400 MB, 13.47% gc time)
UTF-32 convert to UTF-8: 264.119 milliseconds (500 allocations: 100 MB, 2.92% gc time)
UTF-32 convert to UTF-16: 294.638 milliseconds (500 allocations: 200 MB, 5.05% gc time)
Latin1:: Looping 100 times, length=1048576
UTF-8: 1376256, UTF-16: 2097152, UTF-32: 4194304
UTF-8 length: 49.058 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 32.650 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.032 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 94.955 milliseconds (5700 allocations: 62723 KB, 2.69% gc time)
UTF-16 valid: 84.053 milliseconds (5600 allocations: 62722 KB, 1.42% gc time)
UTF-32 valid: 58.493 milliseconds (5600 allocations: 62722 KB, 1.61% gc time)
UTF-8 convert to UTF-16: 428.550 milliseconds (300 allocations: 200 MB, 2.66% gc time)
UTF-8 convert to UTF-32: 454.950 milliseconds (300 allocations: 400 MB, 8.59% gc time)
UTF-16 convert to UTF-8: 310.016 milliseconds (300 allocations: 131 MB, 3.95% gc time)
UTF-16 convert to UTF-32: 175.698 milliseconds (300 allocations: 400 MB, 11.99% gc time)
UTF-32 convert to UTF-8: 378.921 milliseconds (500 allocations: 131 MB, 2.87% gc time)
UTF-32 convert to UTF-16: 291.743 milliseconds (500 allocations: 200 MB, 4.55% gc time)
2-byte:: Looping 100 times, length=1048576
UTF-8: 1376256, UTF-16: 2097152, UTF-32: 4194304
UTF-8 length: 55.692 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 32.544 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.657 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 95.556 milliseconds (5700 allocations: 62723 KB, 4.14% gc time)
UTF-16 valid: 90.353 milliseconds (5600 allocations: 62722 KB, 0.99% gc time)
UTF-32 valid: 58.404 milliseconds (5600 allocations: 62722 KB, 1.41% gc time)
UTF-8 convert to UTF-16: 434.261 milliseconds (300 allocations: 200 MB, 2.61% gc time)
UTF-8 convert to UTF-32: 469.616 milliseconds (300 allocations: 400 MB, 7.58% gc time)
UTF-16 convert to UTF-8: 317.851 milliseconds (300 allocations: 131 MB, 4.08% gc time)
UTF-16 convert to UTF-32: 178.178 milliseconds (300 allocations: 400 MB, 10.16% gc time)
UTF-32 convert to UTF-8: 385.321 milliseconds (500 allocations: 131 MB, 2.74% gc time)
UTF-32 convert to UTF-16: 288.048 milliseconds (500 allocations: 200 MB, 5.42% gc time)
3-byte:: Looping 100 times, length=1048576
UTF-8: 1507328, UTF-16: 2097152, UTF-32: 4194304
UTF-8 length: 53.629 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 31.904 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.329 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 103.982 milliseconds (5700 allocations: 62723 KB, 3.39% gc time)
UTF-16 valid: 85.081 milliseconds (5600 allocations: 62722 KB, 0.78% gc time)
UTF-32 valid: 62.092 milliseconds (5600 allocations: 62722 KB, 1.45% gc time)
UTF-8 convert to UTF-16: 446.894 milliseconds (300 allocations: 200 MB, 2.53% gc time)
UTF-8 convert to UTF-32: 446.524 milliseconds (300 allocations: 400 MB, 7.09% gc time)
UTF-16 convert to UTF-8: 531.537 milliseconds (300 allocations: 144 MB, 2.48% gc time)
UTF-16 convert to UTF-32: 172.631 milliseconds (300 allocations: 400 MB, 10.76% gc time)
UTF-32 convert to UTF-8: 630.220 milliseconds (500 allocations: 144 MB, 1.74% gc time)
UTF-32 convert to UTF-16: 280.836 milliseconds (500 allocations: 200 MB, 3.98% gc time)
4-byte:: Looping 100 times, length=1048576
UTF-8: 1703936, UTF-16: 2359296, UTF-32: 4194304
UTF-8 length: 60.895 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 36.506 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.237 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 121.572 milliseconds (5700 allocations: 62723 KB, 3.61% gc time)
UTF-16 valid: 131.762 milliseconds (5600 allocations: 62722 KB, 0.67% gc time)
UTF-32 valid: 60.716 milliseconds (5600 allocations: 62722 KB, 1.40% gc time)
UTF-8 convert to UTF-16: 458.781 milliseconds (300 allocations: 225 MB, 2.98% gc time)
UTF-8 convert to UTF-32: 477.869 milliseconds (300 allocations: 400 MB, 7.62% gc time)
UTF-16 convert to UTF-8: 689.867 milliseconds (300 allocations: 163 MB, 2.33% gc time)
UTF-16 convert to UTF-32: 284.936 milliseconds (300 allocations: 400 MB, 10.62% gc time)
UTF-32 convert to UTF-8: 787.019 milliseconds (500 allocations: 163 MB, 1.58% gc time)
UTF-32 convert to UTF-16: 329.614 milliseconds (500 allocations: 225 MB, 5.57% gc time)
Surrogates:: Looping 100 times, length=1048576
UTF-8: 1966080, UTF-16: 2359296, UTF-32: 4194304
UTF-8 length: 69.755 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 36.496 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.187 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 18.541 milliseconds (5700 allocations: 62723 KB, 24.87% gc time)
UTF-16 valid: 128.821 milliseconds (5600 allocations: 62722 KB, 0.74% gc time)
UTF-32 valid: 64.002 milliseconds (5600 allocations: 62722 KB, 1.64% gc time)
UTF-8 convert to UTF-16: 517.120 milliseconds (300 allocations: 225 MB, 2.71% gc time)
UTF-8 convert to UTF-32: 529.042 milliseconds (300 allocations: 400 MB, 6.67% gc time)
UTF-16 convert to UTF-8: 698.663 milliseconds (300 allocations: 163 MB, 2.16% gc time)
UTF-16 convert to UTF-32: 280.280 milliseconds (300 allocations: 400 MB, 10.76% gc time)
UTF-32 convert to UTF-8: 781.826 milliseconds (500 allocations: 163 MB, 1.56% gc time)
UTF-32 convert to UTF-16: 322.665 milliseconds (500 allocations: 225 MB, 5.71% gc time)
ASCII: Looping 100 times, length=4194304
length: 1.231 microseconds (100 allocations: 1600 bytes)
is_valid_ascii: 229.091 milliseconds (5600 allocations: 62722 KB, 11.81% gc time)
Convert to UTF-8: 2.482 microseconds (100 allocations: 1600 bytes)
Convert to UTF-16: 161.158 milliseconds (300 allocations: 800 MB, 25.18% gc time)
Convert to UTF-32: 388.974 milliseconds (300 allocations: 1600 MB, 29.13% gc time)
ASCII:: Looping 100 times, length=4194304
UTF-8: 4194304, UTF-16: 8388608, UTF-32: 16777216
UTF-8 length: 149.073 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 130.875 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.631 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 208.026 milliseconds (5700 allocations: 62723 KB, 5.93% gc time)
UTF-16 valid: 298.361 milliseconds (5600 allocations: 62722 KB, 0.28% gc time)
UTF-32 valid: 189.001 milliseconds (5600 allocations: 62722 KB, 0.42% gc time)
UTF-8 convert to UTF-16: 903.148 milliseconds (300 allocations: 800 MB, 7.29% gc time)
UTF-8 convert to UTF-32: 1.254 seconds (300 allocations: 1600 MB, 12.99% gc time)
UTF-16 convert to UTF-8: 566.660 milliseconds (300 allocations: 400 MB, 6.06% gc time)
UTF-16 convert to UTF-32: 662.357 milliseconds (300 allocations: 1600 MB, 18.52% gc time)
UTF-32 convert to UTF-8: 1.128 seconds (500 allocations: 400 MB, 3.28% gc time)
UTF-32 convert to UTF-16: 1.262 seconds (500 allocations: 800 MB, 3.74% gc time)
Latin1:: Looping 100 times, length=4194304
UTF-8: 5505024, UTF-16: 8388608, UTF-32: 16777216
UTF-8 length: 247.493 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 171.551 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.032 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 399.358 milliseconds (5700 allocations: 62723 KB, 3.49% gc time)
UTF-16 valid: 302.795 milliseconds (5600 allocations: 62722 KB, 0.29% gc time)
UTF-32 valid: 191.916 milliseconds (5600 allocations: 62722 KB, 0.36% gc time)
UTF-8 convert to UTF-16: 1.770 seconds (300 allocations: 800 MB, 3.57% gc time)
UTF-8 convert to UTF-32: 1.887 seconds (300 allocations: 1600 MB, 8.87% gc time)
UTF-16 convert to UTF-8: 1.279 seconds (300 allocations: 525 MB, 3.97% gc time)
UTF-16 convert to UTF-32: 808.802 milliseconds (300 allocations: 1600 MB, 15.19% gc time)
UTF-32 convert to UTF-8: 1.514 seconds (500 allocations: 525 MB, 2.35% gc time)
UTF-32 convert to UTF-16: 1.138 seconds (500 allocations: 800 MB, 4.18% gc time)
2-byte:: Looping 100 times, length=4194304
UTF-8: 5505024, UTF-16: 8388608, UTF-32: 16777216
UTF-8 length: 214.219 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 146.007 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.020 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 357.325 milliseconds (5700 allocations: 62723 KB, 3.06% gc time)
UTF-16 valid: 303.671 milliseconds (5600 allocations: 62722 KB, 0.27% gc time)
UTF-32 valid: 204.814 milliseconds (5600 allocations: 62722 KB, 0.37% gc time)
UTF-8 convert to UTF-16: 1.809 seconds (300 allocations: 800 MB, 3.48% gc time)
UTF-8 convert to UTF-32: 1.912 seconds (300 allocations: 1600 MB, 8.94% gc time)
UTF-16 convert to UTF-8: 1.433 seconds (300 allocations: 525 MB, 4.26% gc time)
UTF-16 convert to UTF-32: 914.576 milliseconds (300 allocations: 1600 MB, 14.15% gc time)
UTF-32 convert to UTF-8: 1.574 seconds (500 allocations: 525 MB, 2.87% gc time)
UTF-32 convert to UTF-16: 1.096 seconds (500 allocations: 800 MB, 4.05% gc time)
3-byte:: Looping 100 times, length=4194304
UTF-8: 6029312, UTF-16: 8388608, UTF-32: 16777216
UTF-8 length: 223.873 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 142.875 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.981 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 420.892 milliseconds (5700 allocations: 62723 KB, 2.26% gc time)
UTF-16 valid: 320.485 milliseconds (5600 allocations: 62722 KB, 0.25% gc time)
UTF-32 valid: 190.411 milliseconds (5600 allocations: 62722 KB, 0.36% gc time)
UTF-8 convert to UTF-16: 1.785 seconds (300 allocations: 800 MB, 3.42% gc time)
UTF-8 convert to UTF-32: 1.858 seconds (300 allocations: 1600 MB, 8.90% gc time)
UTF-16 convert to UTF-8: 2.188 seconds (300 allocations: 575 MB, 2.84% gc time)
UTF-16 convert to UTF-32: 840.271 milliseconds (300 allocations: 1600 MB, 14.62% gc time)
UTF-32 convert to UTF-8: 2.609 seconds (500 allocations: 575 MB, 2.38% gc time)
UTF-32 convert to UTF-16: 1.129 seconds (500 allocations: 800 MB, 3.87% gc time)
4-byte:: Looping 100 times, length=4194304
UTF-8: 6815744, UTF-16: 9437184, UTF-32: 16777216
UTF-8 length: 246.875 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 147.930 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 2.292 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 440.936 milliseconds (5700 allocations: 62723 KB, 2.60% gc time)
UTF-16 valid: 465.448 milliseconds (5600 allocations: 62722 KB, 0.17% gc time)
UTF-32 valid: 193.753 milliseconds (5600 allocations: 62722 KB, 0.35% gc time)
UTF-8 convert to UTF-16: 1.934 seconds (300 allocations: 900 MB, 5.18% gc time)
UTF-8 convert to UTF-32: 1.966 seconds (300 allocations: 1600 MB, 8.63% gc time)
UTF-16 convert to UTF-8: 2.817 seconds (300 allocations: 650 MB, 2.41% gc time)
UTF-16 convert to UTF-32: 1.120 seconds (300 allocations: 1600 MB, 10.88% gc time)
UTF-32 convert to UTF-8: 3.240 seconds (500 allocations: 650 MB, 2.09% gc time)
UTF-32 convert to UTF-16: 1.218 seconds (500 allocations: 900 MB, 4.22% gc time)
Surrogates:: Looping 100 times, length=4194304
UTF-8: 7864320, UTF-16: 9437184, UTF-32: 16777216
UTF-8 length: 285.297 milliseconds (100 allocations: 1600 bytes)
UTF-16 length: 147.745 milliseconds (100 allocations: 1600 bytes)
UTF-32 length: 1.923 microseconds (100 allocations: 1600 bytes)
UTF-8 valid: 23.038 milliseconds (5700 allocations: 62723 KB, 41.06% gc time)
UTF-16 valid: 480.695 milliseconds (5600 allocations: 62722 KB, 0.17% gc time)
UTF-32 valid: 192.526 milliseconds (5600 allocations: 62722 KB, 0.36% gc time)
UTF-8 convert to UTF-16: 2.149 seconds (300 allocations: 900 MB, 4.38% gc time)
UTF-8 convert to UTF-32: 2.131 seconds (300 allocations: 1600 MB, 7.97% gc time)
UTF-16 convert to UTF-8: 2.870 seconds (300 allocations: 650 MB, 2.31% gc time)
UTF-16 convert to UTF-32: 1.122 seconds (300 allocations: 1600 MB, 10.74% gc time)
UTF-32 convert to UTF-8: 3.167 seconds (500 allocations: 650 MB, 2.15% gc time)
UTF-32 convert to UTF-16: 1.231 seconds (500 allocations: 900 MB, 4.05% gc time)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment