simdna 1.0.2

High-performance SIMD-accelerated DNA sequence encoding supporting all IUPAC nucleotide codes
Documentation
operation,method,seq_length,time_low_ns,time_median_ns,time_high_ns
decode,scalar_2bit,15,29.194,29.208,29.223
decode,scalar_2bit,16,29.45,29.487,29.532
decode,scalar_2bit,17,28.945,28.969,28.997
decode,scalar_2bit,32,33.667,33.709,33.762
decode,scalar_2bit,33,34.319,34.341,34.375
decode,scalar_2bit,63,41.998,42.025,42.057
decode,scalar_2bit,64,42.375,42.391,42.409
decode,scalar_2bit,127,66.622,66.706,66.816
decode,scalar_2bit,128,66.916,66.956,67.007
decode,scalar_2bit,255,110.42,110.5,110.61
decode,scalar_2bit,256,110.92,111.01,111.11
decode,scalar_2bit,512,202.5,202.77,203.14
decode,scalar_2bit,1023,387.48,388.19,389.55
decode,scalar_2bit,1024,381.41,381.62,381.89
decode,scalar_2bit,2048,741.9,747.26,755.39
decode,scalar_2bit,4095,1472.5,1473.2,1474.2
decode,scalar_2bit,4096,1472.3,1473.2,1474.3
decode,scalar_2bit,8192,2921.8,2923.2999999999997,2925.2
decode,scalar_2bit,9999,3562.6000000000004,3583.8,3625.1000000000004
decode,scalar_2bit,10000,3561.0,3564.2,3567.8999999999996
decode,scalar_4bit,15,25.08,25.221,25.376
decode,scalar_4bit,16,25.333,25.474,25.649
decode,scalar_4bit,17,27.451,27.478,27.511
decode,scalar_4bit,32,33.594,33.821,34.232
decode,scalar_4bit,33,34.624,34.645,34.674
decode,scalar_4bit,63,44.217,44.517,44.981
decode,scalar_4bit,64,44.338,44.374,44.429
decode,scalar_4bit,127,61.489,61.711,62.112
decode,scalar_4bit,128,61.8,61.835,61.88
decode,scalar_4bit,255,115.34,116.49,118.22
decode,scalar_4bit,256,112.3,112.39,112.53
decode,scalar_4bit,512,190.73,190.93,191.19
decode,scalar_4bit,1023,355.18,355.5,355.88
decode,scalar_4bit,1024,350.72,351.18,351.76
decode,scalar_4bit,2048,688.46,688.99,689.7
decode,scalar_4bit,4095,1371.8,1373.2,1374.9
decode,scalar_4bit,4096,1368.6000000000001,1376.6000000000001,1388.7
decode,scalar_4bit,8192,2693.9,2697.0,2700.8
decode,scalar_4bit,9999,3282.9,3299.0,3330.5
decode,scalar_4bit,10000,3276.5,3278.1,3280.0
decode,simd_4bit,15,29.147,29.162,29.18
decode,simd_4bit,16,26.733,26.753,26.779
decode,simd_4bit,17,26.784,26.841,26.895
decode,simd_4bit,32,28.437,28.474,28.52
decode,simd_4bit,33,29.167,29.396,29.75
decode,simd_4bit,63,34.253,34.282,34.318
decode,simd_4bit,64,32.129,32.282,32.518
decode,simd_4bit,127,48.255,48.305,48.375
decode,simd_4bit,128,47.814,48.002,48.304
decode,simd_4bit,255,70.42,70.462,70.515
decode,simd_4bit,256,68.529,69.084,69.851
decode,simd_4bit,512,108.37,108.42,108.47
decode,simd_4bit,1023,196.52,197.09,197.97
decode,simd_4bit,1024,195.01,195.08,195.17
decode,simd_4bit,2048,377.87,379.97,384.12
decode,simd_4bit,4095,726.37,727.13,728.22
decode,simd_4bit,4096,724.05,724.45,724.93
decode,simd_4bit,8192,1424.9,1426.1,1427.5
decode,simd_4bit,9999,1736.2,1738.0,1740.3999999999999
decode,simd_4bit,10000,1735.8,1737.6000000000001,1739.8
encode,scalar_2bit,15,94.188,94.264,94.386
encode,scalar_2bit,16,50.59,50.622,50.661
encode,scalar_2bit,17,105.59,105.68,105.79
encode,scalar_2bit,32,68.103,68.205,68.326
encode,scalar_2bit,33,113.66,113.71,113.77
encode,scalar_2bit,63,129.11,129.3,129.52
encode,scalar_2bit,64,82.801,82.855,82.919
encode,scalar_2bit,127,175.69,175.89,176.14
encode,scalar_2bit,128,132.54,132.64,132.81
encode,scalar_2bit,255,255.44,255.58,255.76
encode,scalar_2bit,256,204.91,205.06,205.24
encode,scalar_2bit,512,359.48,360.54,361.79
encode,scalar_2bit,1023,713.86,714.91,716.2
encode,scalar_2bit,1024,654.37,655.45,656.76
encode,scalar_2bit,2048,1253.4,1257.2,1263.6000000000001
encode,scalar_2bit,4095,2530.8,2531.8999999999996,2533.3
encode,scalar_2bit,4096,2425.3,2427.0,2429.0
encode,scalar_2bit,8192,4764.2,4809.2,4875.3
encode,scalar_2bit,9999,5967.6,5971.5,5976.6
encode,scalar_2bit,10000,5788.5,5792.3,5797.799999999999
encode,scalar_4bit,15,31.281,31.309,31.35
encode,scalar_4bit,16,28.465,28.482,28.502
encode,scalar_4bit,17,28.987,29.009,29.039
encode,scalar_4bit,32,36.964,37.145,37.466
encode,scalar_4bit,33,40.703,40.756,40.827
encode,scalar_4bit,63,59.341,59.769,60.404
encode,scalar_4bit,64,59.701,59.75,59.809
encode,scalar_4bit,127,112.17,112.48,112.95
encode,scalar_4bit,128,112.41,112.51,112.63
encode,scalar_4bit,255,189.41,191.12,193.98
encode,scalar_4bit,256,188.9,189.03,189.21
encode,scalar_4bit,512,351.72,352.04,352.41
encode,scalar_4bit,1023,669.73,670.06,670.45
encode,scalar_4bit,1024,672.82,673.83,675.27
encode,scalar_4bit,2048,1334.8,1336.2,1337.8000000000002
encode,scalar_4bit,4095,2610.0,2624.4,2651.7
encode,scalar_4bit,4096,2610.3,2612.1,2614.3
encode,scalar_4bit,8192,5179.599999999999,5208.700000000001,5254.8
encode,scalar_4bit,9999,6328.400000000001,6332.200000000001,6337.0
encode,scalar_4bit,10000,6325.2,6345.6,6381.8
encode,simd_4bit,15,28.682,28.969,29.353
encode,simd_4bit,16,26.802,26.833,26.871
encode,simd_4bit,17,26.787,26.804,26.825
encode,simd_4bit,32,27.789,27.974,28.316
encode,simd_4bit,33,31.195,31.291,31.447
encode,simd_4bit,63,40.57,40.599,40.633
encode,simd_4bit,64,37.465,37.52,37.593
encode,simd_4bit,127,59.158,59.194,59.244
encode,simd_4bit,128,56.197,56.239,56.297
encode,simd_4bit,255,90.928,90.977,91.04
encode,simd_4bit,256,88.061,88.67,89.644
encode,simd_4bit,512,153.53,153.63,153.76
encode,simd_4bit,1023,284.26,287.19,291.57
encode,simd_4bit,1024,281.41,283.33,287.21
encode,simd_4bit,2048,545.29,545.68,546.22
encode,simd_4bit,4095,1078.2,1079.3,1080.8
encode,simd_4bit,4096,1084.3,1089.1,1098.6
encode,simd_4bit,8192,2141.6,2143.4,2145.9
encode,simd_4bit,9999,2620.5,2622.7,2625.5
encode,simd_4bit,10000,2615.8,2617.6,2620.1
reverse_complement,scalar,15,24.739,24.826,24.975
reverse_complement,scalar,16,24.181,24.189,24.197
reverse_complement,scalar,17,27.051,27.079,27.114
reverse_complement,scalar,32,33.531,33.552,33.578
reverse_complement,scalar,33,34.391,34.415,34.449
reverse_complement,scalar,63,45.153,45.194,45.246
reverse_complement,scalar,64,45.308,45.36,45.424
reverse_complement,scalar,127,64.142,64.269,64.434
reverse_complement,scalar,128,63.485,63.56,63.659
reverse_complement,scalar,255,102.71,102.77,102.87
reverse_complement,scalar,256,101.91,101.96,102.02
reverse_complement,scalar,512,181.62,181.72,181.82
reverse_complement,scalar,1023,339.36,339.59,339.88
reverse_complement,scalar,1024,338.88,339.11,339.39
reverse_complement,scalar,2048,637.68,641.69,649.52
reverse_complement,scalar,4095,1246.8999999999999,1248.6,1250.8
reverse_complement,scalar,4096,1246.0,1246.8999999999999,1248.0
reverse_complement,scalar,8192,2469.6,2471.8,2474.5
reverse_complement,scalar,9999,3005.7999999999997,3008.1000000000004,3011.2000000000003
reverse_complement,scalar,10000,3005.1,3007.0,3009.3
reverse_complement,simd_encoded,15,39.278,39.352,39.429
reverse_complement,simd_encoded,16,22.311,22.329,22.355
reverse_complement,simd_encoded,17,42.037,42.07,42.124
reverse_complement,simd_encoded,32,22.591,22.606,22.625
reverse_complement,simd_encoded,33,65.486,65.68,65.96
reverse_complement,simd_encoded,63,40.992,41.092,41.229
reverse_complement,simd_encoded,64,25.161,25.209,25.267
reverse_complement,simd_encoded,127,53.556,53.693,53.883
reverse_complement,simd_encoded,128,25.035,25.058,25.086
reverse_complement,simd_encoded,255,59.548,60.093,60.908
reverse_complement,simd_encoded,256,31.728,31.753,31.784
reverse_complement,simd_encoded,512,39.678,39.708,39.749
reverse_complement,simd_encoded,1023,81.852,81.922,82.016
reverse_complement,simd_encoded,1024,52.655,52.696,52.75
reverse_complement,simd_encoded,2048,89.972,90.021,90.085
reverse_complement,simd_encoded,4095,223.67,223.79,223.92
reverse_complement,simd_encoded,4096,171.43,171.55,171.73
reverse_complement,simd_encoded,8192,315.07,318.12,322.59
reverse_complement,simd_encoded,9999,465.52,465.85,466.27
reverse_complement,simd_encoded,10000,388.48,388.99,389.68
reverse_complement,simd_high_level,15,89.812,89.884,89.96
reverse_complement,simd_high_level,16,70.135,70.186,70.246
reverse_complement,simd_high_level,17,94.386,94.457,94.551
reverse_complement,simd_high_level,32,78.237,78.885,79.854
reverse_complement,simd_high_level,33,125.96,126.06,126.18
reverse_complement,simd_high_level,63,115.94,116.5,117.55
reverse_complement,simd_high_level,64,96.174,96.269,96.378
reverse_complement,simd_high_level,127,152.91,153.49,154.33
reverse_complement,simd_high_level,128,122.37,122.49,122.65
reverse_complement,simd_high_level,255,215.2,217.56,221.03
reverse_complement,simd_high_level,256,181.9,182.06,182.25
reverse_complement,simd_high_level,512,296.05,296.32,296.66
reverse_complement,simd_high_level,1023,562.94,567.46,574.38
reverse_complement,simd_high_level,1024,526.45,526.83,527.32
reverse_complement,simd_high_level,2048,1007.3000000000001,1008.1,1009.1000000000001
reverse_complement,simd_high_level,4095,2031.6999999999998,2034.8000000000002,2039.0000000000002
reverse_complement,simd_high_level,4096,1973.4,1979.9,1990.8999999999999
reverse_complement,simd_high_level,8192,3877.2000000000003,3881.0,3885.9
reverse_complement,simd_high_level,9999,4811.8,4815.2,4819.200000000001
reverse_complement,simd_high_level,10000,4737.3,4742.3,4748.1
roundtrip,scalar_2bit,15,118.95,119.65,120.72
roundtrip,scalar_2bit,16,75.943,75.993,76.062
roundtrip,scalar_2bit,17,132.25,133.15,134.57
roundtrip,scalar_2bit,32,97.372,97.449,97.539
roundtrip,scalar_2bit,33,147.53,147.68,147.92
roundtrip,scalar_2bit,63,170.46,170.94,171.49
roundtrip,scalar_2bit,64,124.61,126.16,128.35
roundtrip,scalar_2bit,127,235.16,235.32,235.53
roundtrip,scalar_2bit,128,191.58,191.74,191.95
roundtrip,scalar_2bit,255,358.83,359.09,359.43
roundtrip,scalar_2bit,256,307.69,307.84,308.02
roundtrip,scalar_2bit,512,560.8,561.06,561.36
roundtrip,scalar_2bit,1023,1117.5,1118.1000000000001,1118.8
roundtrip,scalar_2bit,1024,1030.8,1031.4,1032.2
roundtrip,scalar_2bit,2048,1989.7,1991.5,1993.8
roundtrip,scalar_2bit,4095,4016.2000000000003,4029.0999999999995,4053.0
roundtrip,scalar_2bit,4096,3903.1,3907.0,3911.7999999999997
roundtrip,scalar_2bit,8192,7670.0,7675.3,7682.2
roundtrip,scalar_2bit,9999,9524.4,9536.0,9550.800000000001
roundtrip,scalar_2bit,10000,9332.800000000001,9338.900000000001,9346.4
roundtrip,scalar_4bit,15,55.381,55.415,55.458
roundtrip,scalar_4bit,16,56.091,56.135,56.192
roundtrip,scalar_4bit,17,56.716,57.255,58.049
roundtrip,scalar_4bit,32,70.706,70.751,70.804
roundtrip,scalar_4bit,33,78.916,79.512,80.423
roundtrip,scalar_4bit,63,105.96,106.07,106.25
roundtrip,scalar_4bit,64,106.53,107.62,109.09
roundtrip,scalar_4bit,127,174.85,174.93,175.02
roundtrip,scalar_4bit,128,175.81,176.6,178.06
roundtrip,scalar_4bit,255,305.2,305.43,305.7
roundtrip,scalar_4bit,256,303.12,305.62,309.38
roundtrip,scalar_4bit,512,541.77,542.06,542.4
roundtrip,scalar_4bit,1023,1049.6000000000001,1059.1999999999998,1073.5
roundtrip,scalar_4bit,1024,1046.1000000000001,1046.6,1047.3
roundtrip,scalar_4bit,2048,2020.3000000000002,2021.7999999999997,2024.0
roundtrip,scalar_4bit,4095,3988.5,3991.8,3996.2
roundtrip,scalar_4bit,4096,3986.9,3998.8,4017.5
roundtrip,scalar_4bit,8192,7880.4,7885.799999999999,7893.7
roundtrip,scalar_4bit,9999,9615.199999999999,9641.6,9688.5
roundtrip,scalar_4bit,10000,9617.4,9623.1,9629.4
roundtrip,simd_4bit,15,53.91,53.98,54.069
roundtrip,simd_4bit,16,51.837,51.894,51.971
roundtrip,simd_4bit,17,56.848,56.922,57.021
roundtrip,simd_4bit,32,62.398,62.444,62.494
roundtrip,simd_4bit,33,63.449,63.536,63.643
roundtrip,simd_4bit,63,74.949,75.016,75.116
roundtrip,simd_4bit,64,72.096,72.328,72.557
roundtrip,simd_4bit,127,103.42,103.5,103.6
roundtrip,simd_4bit,128,99.56,99.679,99.824
roundtrip,simd_4bit,255,158.25,158.84,160.01
roundtrip,simd_4bit,256,153.03,153.2,153.42
roundtrip,simd_4bit,512,261.13,261.26,261.41
roundtrip,simd_4bit,1023,478.39,478.95,479.72
roundtrip,simd_4bit,1024,474.43,474.98,475.68
roundtrip,simd_4bit,2048,923.47,926.56,932.53
roundtrip,simd_4bit,4095,1810.0,1811.9,1814.4
roundtrip,simd_4bit,4096,1807.0,1808.3,1810.0
roundtrip,simd_4bit,8192,3566.8,3572.1,3578.9
roundtrip,simd_4bit,9999,4355.299999999999,4359.0,4363.8
roundtrip,simd_4bit,10000,4350.799999999999,4354.0,4357.9