akiki-vad-1.0 / assets /package-latency.svg
TulipAkiki's picture
Highlight Rust engine performance with benchmark plots and akiki vad examples
6d786df verified
|
Raw History Blame Contribute Delete
18.4 kB
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="828pt" height="532.8pt" viewBox="0 0 828 532.8" xmlns="http://www.w3.org/2000/svg" version="1.1">
<metadata>
<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<cc:Work>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:date>2026-10-25T21:09:25.232520</dc:date>
<dc:format>image/svg+xml</dc:format>
<dc:creator>
<cc:Agent>
<dc:title>Matplotlib v3.11.2, https://matplotlib.org/</dc:title>
</cc:Agent>
</dc:creator>
</cc:Work>
</rdf:RDF>
</metadata>
<defs>
<style type="text/css">*{stroke-linejoin: round; stroke-linecap: butt}</style>
</defs>
<g id="figure_1">
<g id="patch_1">
<path d="M 0 532.8
L 828 532.8
L 828 0
L 0 0
z
" style="fill: #ffffff"/>
</g>
<g id="axes_1">
<g id="patch_2">
<path d="M 198.72 410.256
L 778.32 410.256
L 778.32 165.168
L 198.72 165.168
z
" style="fill: #ffffff"/>
</g>
<g id="patch_3">
<path d="M 198.72 176.308364
L 778.32 176.308364
L 778.32 211.152246
L 198.72 211.152246
z
" clip-path="url(#pd8fba40cb9)" style="fill: #edf8f7; stroke: #edf8f7; stroke-linejoin: miter"/>
</g>
<g id="matplotlib.axis_1">
<g id="xtick_1">
<g id="line2d_1">
<path d="M 198.72 410.256
L 198.72 165.168
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #e5ebef; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_2"/>
<g id="text_1">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: middle; fill: #556b78" x="198.72" y="422.113422" transform="rotate(-0 198.72 422.113422)">0</text>
</g>
</g>
<g id="xtick_2">
<g id="line2d_3">
<path d="M 322.039149 410.256
L 322.039149 165.168
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #e5ebef; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_4"/>
<g id="text_2">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: middle; fill: #556b78" x="322.039149" y="422.113422" transform="rotate(-0 322.039149 422.113422)">4</text>
</g>
</g>
<g id="xtick_3">
<g id="line2d_5">
<path d="M 445.358298 410.256
L 445.358298 165.168
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #e5ebef; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_6"/>
<g id="text_3">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: middle; fill: #556b78" x="445.358298" y="422.113422" transform="rotate(-0 445.358298 422.113422)">8</text>
</g>
</g>
<g id="xtick_4">
<g id="line2d_7">
<path d="M 568.677447 410.256
L 568.677447 165.168
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #e5ebef; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_8"/>
<g id="text_4">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: middle; fill: #556b78" x="568.677447" y="422.113422" transform="rotate(-0 568.677447 422.113422)">12</text>
</g>
</g>
<g id="xtick_5">
<g id="line2d_9">
<path d="M 691.996596 410.256
L 691.996596 165.168
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #e5ebef; stroke-width: 0.8; stroke-linecap: square"/>
</g>
<g id="line2d_10"/>
<g id="text_5">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: middle; fill: #556b78" x="691.996596" y="422.113422" transform="rotate(-0 691.996596 422.113422)">16</text>
</g>
</g>
<g id="text_6">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: middle; fill: #102e3b" x="488.52" y="446.114281" transform="rotate(-0 488.52 446.114281)">Microseconds per 16 ms audio frame 路 lower is better</text>
</g>
</g>
<g id="matplotlib.axis_2">
<g id="ytick_1">
<g id="line2d_11"/>
<g id="text_7">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: end; fill: #556b78" x="195.22" y="197.909446" transform="rotate(-0 195.22 197.909446)">INT8 路 default</text>
</g>
</g>
<g id="ytick_2">
<g id="line2d_12"/>
<g id="text_8">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: end; fill: #556b78" x="195.22" y="236.624441" transform="rotate(-0 195.22 236.624441)">BF16</text>
</g>
</g>
<g id="ytick_3">
<g id="line2d_13"/>
<g id="text_9">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: end; fill: #556b78" x="195.22" y="275.340296" transform="rotate(-0 195.22 275.340296)">INT8 / FP32 input</text>
</g>
</g>
<g id="ytick_4">
<g id="line2d_14"/>
<g id="text_10">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: end; fill: #556b78" x="195.22" y="314.055292" transform="rotate(-0 195.22 314.055292)">INT4</text>
</g>
</g>
<g id="ytick_5">
<g id="line2d_15"/>
<g id="text_11">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: end; fill: #556b78" x="195.22" y="352.770717" transform="rotate(-0 195.22 352.770717)">FP16</text>
</g>
</g>
<g id="ytick_6">
<g id="line2d_16"/>
<g id="text_12">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: end; fill: #556b78" x="195.22" y="391.486143" transform="rotate(-0 195.22 391.486143)">FP32</text>
</g>
</g>
</g>
<g id="patch_4">
<path d="M 198.72 181.9221
L 315.256596 181.9221
L 315.256596 192.375265
L 198.72 192.375265
z
" clip-path="url(#pd8fba40cb9)" style="fill: #9ccfce"/>
</g>
<g id="patch_5">
<path d="M 198.72 220.637526
L 366.74234 220.637526
L 366.74234 231.09069
L 198.72 231.09069
z
" clip-path="url(#pd8fba40cb9)" style="fill: #9ccfce"/>
</g>
<g id="patch_6">
<path d="M 198.72 259.352951
L 368.931255 259.352951
L 368.931255 269.806116
L 198.72 269.806116
z
" clip-path="url(#pd8fba40cb9)" style="fill: #9ccfce"/>
</g>
<g id="patch_7">
<path d="M 198.72 298.068376
L 402.504894 298.068376
L 402.504894 308.521541
L 198.72 308.521541
z
" clip-path="url(#pd8fba40cb9)" style="fill: #9ccfce"/>
</g>
<g id="patch_8">
<path d="M 198.72 336.783802
L 426.860426 336.783802
L 426.860426 347.236966
L 198.72 347.236966
z
" clip-path="url(#pd8fba40cb9)" style="fill: #9ccfce"/>
</g>
<g id="patch_9">
<path d="M 198.72 375.499227
L 497.18317 375.499227
L 497.18317 385.952392
L 198.72 385.952392
z
" clip-path="url(#pd8fba40cb9)" style="fill: #9ccfce"/>
</g>
<g id="text_13">
<text style="font-size: 10px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #102e3b" x="322.039149" y="189.746339" transform="rotate(-0 322.039149 189.746339)">3.78</text>
</g>
<g id="text_14">
<text style="font-size: 10px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #102e3b" x="373.524894" y="228.461764" transform="rotate(-0 373.524894 228.461764)">5.45</text>
</g>
<g id="text_15">
<text style="font-size: 10px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #102e3b" x="376.299574" y="267.17719" transform="rotate(-0 376.299574 267.17719)">5.52</text>
</g>
<g id="text_16">
<text style="font-size: 10px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #102e3b" x="409.287447" y="305.892615" transform="rotate(-0 409.287447 305.892615)">6.61</text>
</g>
<g id="text_17">
<text style="font-size: 10px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #102e3b" x="437.373383" y="344.60804" transform="rotate(-0 437.373383 344.60804)">7.40</text>
</g>
<g id="text_18">
<text style="font-size: 10px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #102e3b" x="525.207447" y="383.323466" transform="rotate(-0 525.207447 383.323466)">9.68</text>
</g>
<g id="patch_10">
<path d="M 198.72 195.085345
L 473.135936 195.085345
L 473.135936 205.53851
L 198.72 205.53851
z
" clip-path="url(#pd8fba40cb9)" style="fill: #087f83"/>
</g>
<g id="patch_11">
<path d="M 198.72 233.80077
L 529.523617 233.80077
L 529.523617 244.253935
L 198.72 244.253935
z
" clip-path="url(#pd8fba40cb9)" style="fill: #087f83"/>
</g>
<g id="patch_12">
<path d="M 198.72 272.516196
L 529.523617 272.516196
L 529.523617 282.96936
L 198.72 282.96936
z
" clip-path="url(#pd8fba40cb9)" style="fill: #087f83"/>
</g>
<g id="patch_13">
<path d="M 198.72 311.231621
L 560.692532 311.231621
L 560.692532 321.684786
L 198.72 321.684786
z
" clip-path="url(#pd8fba40cb9)" style="fill: #087f83"/>
</g>
<g id="patch_14">
<path d="M 198.72 349.947046
L 593.372106 349.947046
L 593.372106 360.400211
L 198.72 360.400211
z
" clip-path="url(#pd8fba40cb9)" style="fill: #087f83"/>
</g>
<g id="patch_15">
<path d="M 198.72 388.662472
L 692.921489 388.662472
L 692.921489 399.115636
L 198.72 399.115636
z
" clip-path="url(#pd8fba40cb9)" style="fill: #087f83"/>
</g>
<g id="text_19">
<text style="font-size: 10px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #102e3b" x="480.843383" y="202.909584" transform="rotate(-0 480.843383 202.909584)">8.90</text>
</g>
<g id="text_20">
<text style="font-size: 10px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #102e3b" x="545.555106" y="241.625009" transform="rotate(-0 545.555106 241.625009)">10.73</text>
</g>
<g id="text_21">
<text style="font-size: 10px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #102e3b" x="537.231064" y="280.340434" transform="rotate(-0 537.231064 280.340434)">10.73</text>
</g>
<g id="text_22">
<text style="font-size: 10px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #102e3b" x="567.752553" y="319.05586" transform="rotate(-0 567.752553 319.05586)">11.74</text>
</g>
<g id="text_23">
<text style="font-size: 10px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #102e3b" x="607.522979" y="357.771285" transform="rotate(-0 607.522979 357.771285)">12.80</text>
</g>
<g id="text_24">
<text style="font-size: 10px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #102e3b" x="709.261277" y="396.48671" transform="rotate(-0 709.261277 396.48671)">16.03</text>
</g>
<g id="LineCollection_1">
<path d="M 315.256596 187.148683
L 315.256596 187.148683
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #102e3b; stroke-width: 0.8"/>
<path d="M 366.125745 225.864108
L 366.74234 225.864108
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #102e3b; stroke-width: 0.8"/>
<path d="M 368.900426 264.579533
L 369.517021 264.579533
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #102e3b; stroke-width: 0.8"/>
<path d="M 402.196596 303.294959
L 402.504894 303.294959
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #102e3b; stroke-width: 0.8"/>
<path d="M 425.966362 342.010384
L 430.59083 342.010384
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #102e3b; stroke-width: 0.8"/>
<path d="M 488.242532 380.725809
L 518.424894 380.725809
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #102e3b; stroke-width: 0.8"/>
</g>
<g id="line2d_17">
<defs>
<path id="m714091283c" d="M 0 2
L 0 -2
" style="stroke: #102e3b"/>
</defs>
<g clip-path="url(#pd8fba40cb9)">
<use xlink:href="#m714091283c" x="315.256596" y="187.148683" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="366.125745" y="225.864108" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="368.900426" y="264.579533" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="402.196596" y="303.294959" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="425.966362" y="342.010384" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="488.242532" y="380.725809" style="fill: #1f77b4; stroke: #102e3b"/>
</g>
</g>
<g id="line2d_18">
<g clip-path="url(#pd8fba40cb9)">
<use xlink:href="#m714091283c" x="315.256596" y="187.148683" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="366.74234" y="225.864108" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="369.517021" y="264.579533" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="402.504894" y="303.294959" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="430.59083" y="342.010384" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="518.424894" y="380.725809" style="fill: #1f77b4; stroke: #102e3b"/>
</g>
</g>
<g id="LineCollection_2">
<path d="M 472.488511 200.311927
L 474.06083 200.311927
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #102e3b; stroke-width: 0.8"/>
<path d="M 527.088064 239.027353
L 538.772553 239.027353
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #102e3b; stroke-width: 0.8"/>
<path d="M 527.982128 277.742778
L 530.448511 277.742778
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #102e3b; stroke-width: 0.8"/>
<path d="M 560.661702 316.458203
L 560.97 316.458203
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #102e3b; stroke-width: 0.8"/>
<path d="M 592.447213 355.173629
L 600.740426 355.173629
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #102e3b; stroke-width: 0.8"/>
<path d="M 687.680426 393.889054
L 702.478723 393.889054
" clip-path="url(#pd8fba40cb9)" style="fill: none; stroke: #102e3b; stroke-width: 0.8"/>
</g>
<g id="line2d_19">
<g clip-path="url(#pd8fba40cb9)">
<use xlink:href="#m714091283c" x="472.488511" y="200.311927" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="527.088064" y="239.027353" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="527.982128" y="277.742778" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="560.661702" y="316.458203" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="592.447213" y="355.173629" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="687.680426" y="393.889054" style="fill: #1f77b4; stroke: #102e3b"/>
</g>
</g>
<g id="line2d_20">
<g clip-path="url(#pd8fba40cb9)">
<use xlink:href="#m714091283c" x="474.06083" y="200.311927" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="538.772553" y="239.027353" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="530.448511" y="277.742778" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="560.97" y="316.458203" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="600.740426" y="355.173629" style="fill: #1f77b4; stroke: #102e3b"/>
<use xlink:href="#m714091283c" x="702.478723" y="393.889054" style="fill: #1f77b4; stroke: #102e3b"/>
</g>
</g>
</g>
<g id="text_25">
<text style="font-weight: 700; font-size: 23px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #102e3b" x="53.82" y="31.968" transform="rotate(-0 53.82 31.968)">Fast streaming inference, one pip install</text>
</g>
<g id="text_26">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #556b78" x="53.82" y="61.8048" transform="rotate(-0 53.82 61.8048)">Akiki VAD 1.0 路 akiki 0.0.5 路 AMD Ryzen 9 9900X 路 one pinned CPU core</text>
</g>
<g id="text_27">
<text style="font-weight: 700; font-size: 34px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #087f83" x="53.82" y="115.0848" transform="rotate(-0 53.82 115.0848)">8.90 碌s</text>
</g>
<g id="text_28">
<text style="font-size: 12px; font-family: 'DejaVu Sans'; fill: #102e3b" transform="translate(240.12 105.140016)">to process a 16 ms frame through VAD.push()</text>
<text style="font-size: 12px; font-family: 'DejaVu Sans'; fill: #102e3b" transform="translate(240.12 119.543297)">INT8 default, including Python buffering and frame output</text>
</g>
<g id="text_29">
<text style="font-size: 9.5px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #556b78" x="53.82" y="481.1184" transform="rotate(-0 53.82 481.1184)">FP32 RealFFT in every precision. Median of three process medians; whiskers show their min鈥搈ax range.</text>
</g>
<g id="text_30">
<text style="font-size: 9.1px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #556b78" x="53.82" y="495.504" transform="rotate(-0 53.82 495.504)">2,000 warmup + 7,500 timed calls per process. Native call uses prepared pointers; Python includes validation and state handling.</text>
</g>
<g id="text_31">
<text style="font-size: 9.3px; font-family: 'DejaVu Sans'; text-anchor: start; fill: #556b78" x="53.82" y="509.8896" transform="rotate(-0 53.82 509.8896)">Excludes model loading/conversion, audio decoding and audio acquisition. Measured 25 Oct 2026; hardware-dependent.</text>
</g>
<g id="legend_1">
<g id="patch_16">
<path d="M 57.924 458.452622
L 79.924 458.452622
L 79.924 450.752622
L 57.924 450.752622
z
" style="fill: #9ccfce; stroke: #9ccfce; stroke-linejoin: miter"/>
</g>
<g id="text_32">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: start" x="88.724" y="458.452622" transform="rotate(-0 88.724 458.452622)">Native call through ctypes</text>
</g>
<g id="patch_17">
<path d="M 255.303531 458.452622
L 277.303531 458.452622
L 277.303531 450.752622
L 255.303531 450.752622
z
" style="fill: #087f83; stroke: #087f83; stroke-linejoin: miter"/>
</g>
<g id="text_33">
<text style="font-size: 11px; font-family: 'DejaVu Sans'; text-anchor: start" x="286.103531" y="458.452622" transform="rotate(-0 286.103531 458.452622)">Public Python VAD.push()</text>
</g>
</g>
</g>
<defs>
<clipPath id="pd8fba40cb9">
<rect x="198.72" y="165.168" width="579.6" height="245.088"/>
</clipPath>
</defs>
</svg>