[{"data":1,"prerenderedAt":36},["ShallowReactive",2],{"note-plugin-hostd-on-a-raspberry-pi-5-ca":3},{"slug":4,"order":5,"title":6,"summary":7,"measured":8,"topic":9,"toc":10,"html":35},"plugin-hostd-on-a-raspberry-pi-5",80,"\"plugin-hostd en una Raspberry Pi 5: què s'ha mesurat i com\"","En una Raspberry Pi 5 amb Zynthian i una interfície d'àudio, una cadena de plugin-hostd té la càrrega DSP més baixa dels quatre amfitrions mesurats (els altres són omx-clap-host, mod-host i jalv), a 48 i a 96 kHz; a més, fa servir més o menys la meitat de memòria que mod-host. Aquesta nota en dona l'aparell, el mètode i totes les taules.","Raspberry Pi 5 (4 GB) amb ZynthianOS Vangelis i una RME Babyface Pro, 5 de novembre del 2026; plugin-hostd 0.18.0 (protocol 0.3.0), omx-clap-host 0.29.0, omx-plugins 0.18.0, mod-host 0.10.9, jalv 1.6.9. Execucions anteriors, 2 de novembre del 2026; plugin-hostd 0.15.9, omx-clap-core 0.26.4, plugin-qualify 0.18.5, omx-plugins 0.17.0, el mod-host de sèrie de Zynthian.","zynthian",[11,14,17,20,23,26,29,32],{"id":12,"title":13},"l-aparell-i-el-metode","L'aparell i el mètode",{"id":15,"title":16},"48-khz","48 kHz",{"id":18,"title":19},"96-khz","96 kHz",{"id":21,"title":22},"amb-carrega","Amb càrrega",{"id":24,"title":25},"el-limit-a-48-khz","El límit a 48 kHz",{"id":27,"title":28},"temps-d-addicio","Temps d'addició",{"id":30,"title":31},"de-les-execucions-anteriors","De les execucions anteriors",{"id":33,"title":34},"el-que-encara-no-s-ha-mesurat","El que encara no s'ha mesurat","\u003Cp>Les xifres d'aquestes execucions també són a la \u003Ca href=\"\u002Fbenchmarks\">pàgina dels bancs de proves\u003C\u002Fa>, fila per fila.\u003C\u002Fp>\n\u003Ch2 id=\"l-aparell-i-el-metode\">L'aparell i el mètode\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>Una Raspberry Pi 5 (Cortex-A76, 4 nuclis, 4 GB) amb ZynthianOS Vangelis (Debian 13, arm64), nucli 6.18 (no\nPREEMPT_RT), amb els paquets que instal·la una Zynthian amb el canal d'OpenMixer.\u003C\u002Fli>\n\u003Cli>JACK 1.9.22 amb el controlador ALSA d'una RME Babyface Pro, amb prioritat de temps real 70, el governador de la CPU a\n\u003Ccode>performance\u003C\u002Fcode> i els serveis del mateix Zynthian aturats durant l'execució i restablerts després. La càrrega DSP i els\nxruns són els del servidor JACK: tot s'ha llegit digitalment, al servidor i als seus ports; res d'aquí no afirma res\nsobre l'àudio analògic.\u003C\u002Fli>\n\u003Cli>Cada fila és la mediana de tres repeticions de 10 s, amb la repetició més baixa i la més alta a la pàgina dels bancs\nde proves. DSP és la càrrega DSP de JACK; PSS és la memòria proporcional dels processos de l'amfitrió, que reparteix\nles biblioteques, de manera que és la memòria que l'aparell gasta de debò.\u003C\u002Fli>\n\u003Cli>Els amfitrions els ha governat directament el banc de proves de plugin-hostd, no el motor de Zynthian ni MOD-UI.\u003C\u002Fli>\n\u003Cli>Una fila amb repeticions massa disperses a l'execució compartida s'ha tornat a executar sola; la xifra que es dona és\nla de la fila sola.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Els amfitrions:\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>amfitrió\u003C\u002Fth>\n\u003Cth>què corre\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>plugin-hostd, afegits en una sola cadena\u003C\u002Ftd>\n\u003Ctd>el dimoni i un worker per a tota la cadena, un client JACK\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>plugin-hostd, cadena declarada de cop\u003C\u002Ftd>\n\u003Ctd>la mateixa cadena, engegada amb tota la llista\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>plugin-hostd, un worker per plugin\u003C\u002Ftd>\n\u003Ctd>el dimoni i un worker per plugin, un client JACK cadascun\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>omx-clap-host, un sol procés\u003C\u002Ftd>\n\u003Ctd>un procés d'omx-clap-host per a tots els plugins\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>mod-host\u003C\u002Ftd>\n\u003Ctd>un procés de mod-host per a tots els plugins, un client JACK cadascun (versions LV2)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>jalv\u003C\u002Ftd>\n\u003Ctd>un procés de jalv per plugin (versions LV2)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>Els conjunts de plugins: omx comp, delay i drive per torns, 3, 8 i 16, en les versions CLAP on l'amfitrió fa córrer CLAP\ni en les versions LV2 a mod-host i jalv; el mateix amb Calf Compressor (LV2) als torns, 8 i 16; i un Pianoteq 9 tocant\nacords de cinc notes.\u003C\u002Fp>\n\u003Ch2 id=\"48-khz\">48 kHz\u003C\u002Fh2>\n\u003Cp>16 plugins (omx comp, delay i drive), 3 períodes, el paràmetre del mateix Zynthian. Càrrega DSP, xruns quan una\nrepetició en va tenir i PSS:\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>mostres\u003C\u002Fth>\n\u003Cth>plugin-hostd, afegits en una sola cadena\u003C\u002Fth>\n\u003Cth>omx-clap-host\u003C\u002Fth>\n\u003Cth>mod-host\u003C\u002Fth>\n\u003Cth>plugin-hostd, un worker per plugin\u003C\u002Fth>\n\u003Cth>jalv\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>128\u003C\u002Ftd>\n\u003Ctd>6,75 %\u003C\u002Ftd>\n\u003Ctd>9,36 %\u003C\u002Ftd>\n\u003Ctd>8,86 %\u003C\u002Ftd>\n\u003Ctd>10,88 %\u003C\u002Ftd>\n\u003Ctd>11,40 %\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>256\u003C\u002Ftd>\n\u003Ctd>6,35 %\u003C\u002Ftd>\n\u003Ctd>7,75 %\u003C\u002Ftd>\n\u003Ctd>7,38 %\u003C\u002Ftd>\n\u003Ctd>8,63 %\u003C\u002Ftd>\n\u003Ctd>8,49 %\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>PSS\u003C\u002Ftd>\n\u003Ctd>54 a 55 MB\u003C\u002Ftd>\n\u003Ctd>53 MB\u003C\u002Ftd>\n\u003Ctd>99 MB\u003C\u002Ftd>\n\u003Ctd>143 MB\u003C\u002Ftd>\n\u003Ctd>690 MB\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>La cadena declarada de cop dona el mateix que la cadena on s'afegeixen (6,75 i 6,38 %). Amb 3 plugins tots els\namfitrions donen entre un 1,5 i un 1,7 % a 256 mostres: la diferència es veu a partir de 8 plugins o a 128 mostres.\u003C\u002Fp>\n\u003Cp>El conjunt amb Calf Compressor, 16 plugins, a cada paràmetre que ha fet córrer el banc de proves (càrrega DSP):\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>mostres, períodes\u003C\u002Fth>\n\u003Cth>cadena de plugin-hostd\u003C\u002Fth>\n\u003Cth>omx-clap-host\u003C\u002Fth>\n\u003Cth>mod-host\u003C\u002Fth>\n\u003Cth>plugin-hostd, un worker per plugin\u003C\u002Fth>\n\u003Cth>jalv\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>128, 2\u003C\u002Ftd>\n\u003Ctd>6,83 %\u003C\u002Ftd>\n\u003Ctd>10,06 %\u003C\u002Ftd>\n\u003Ctd>9,40 %\u003C\u002Ftd>\n\u003Ctd>11,31 %\u003C\u002Ftd>\n\u003Ctd>12,97 %, 38 xruns\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>128, 3\u003C\u002Ftd>\n\u003Ctd>7,00 %\u003C\u002Ftd>\n\u003Ctd>9,65 %\u003C\u002Ftd>\n\u003Ctd>9,24 %\u003C\u002Ftd>\n\u003Ctd>11,80 %\u003C\u002Ftd>\n\u003Ctd>12,34 %, 32 xruns\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>256, 2\u003C\u002Ftd>\n\u003Ctd>6,46 %\u003C\u002Ftd>\n\u003Ctd>8,43 %\u003C\u002Ftd>\n\u003Ctd>8,21 %\u003C\u002Ftd>\n\u003Ctd>12,52 %\u003C\u002Ftd>\n\u003Ctd>9,44 %\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>256, 3\u003C\u002Ftd>\n\u003Ctd>7,79 %\u003C\u002Ftd>\n\u003Ctd>7,73 %\u003C\u002Ftd>\n\u003Ctd>7,66 %\u003C\u002Ftd>\n\u003Ctd>9,14 %\u003C\u002Ftd>\n\u003Ctd>8,80 %\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>A 128 mostres la cadena fa córrer 16 plugins amb 0,7 de la càrrega d'omx-clap-host o de mod-host i més o menys la meitat\nde la de jalv; jalv és l'únic amfitrió amb xruns. A 256 mostres amb 3 períodes totes les formes d'un sol procés donen\nel mateix; la xifra de la cadena en aquest cas té la dispersió més gran de la taula (de 7,47 a 8,16 %) i no s'ha tornat a\nexecutar sola, de manera que no es llegeix com un cost del tercer període. omx-clap-host i mod-host queden a menys de 0,7\npunts l'un de l'altre a cada paràmetre: l'adaptador LV2 no és el camí més lent.\u003C\u002Fp>\n\u003Cp>Pianoteq 9, una instància, a 256 mostres i 3 períodes: 13,60 % a omx-clap-host, 13,64 % a plugin-hostd, 13,40 % a\nmod-host i 14,70 % a jalv. La feina la fan els fils del mateix instrument, de manera que l'amfitrió hi compta poc; el seu\nPSS és de 250 MB a plugin-hostd, 288 MB a mod-host i 279 MB a jalv.\u003C\u002Fp>\n\u003Ch2 id=\"96-khz\">96 kHz\u003C\u002Fh2>\n\u003Cp>Les mateixes files a 96000 Hz, 3 períodes. A 96 kHz un període de 256 mostres dura 2,67 ms i un de 128 mostres 1,33 ms.\nCàrrega DSP, amb la mediana dels xruns quan una repetició en va tenir:\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>conjunt, mostres\u003C\u002Fth>\n\u003Cth>plugin-hostd, afegits en una sola cadena\u003C\u002Fth>\n\u003Cth>omx-clap-host\u003C\u002Fth>\n\u003Cth>mod-host\u003C\u002Fth>\n\u003Cth>plugin-hostd, un worker per plugin\u003C\u002Fth>\n\u003Cth>jalv\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>16 plugins omx, 128\u003C\u002Ftd>\n\u003Ctd>15,46 %, 1 xrun\u003C\u002Ftd>\n\u003Ctd>18,18 %\u003C\u002Ftd>\n\u003Ctd>19,93 %, 9 xruns\u003C\u002Ftd>\n\u003Ctd>21,19 %, 26 xruns\u003C\u002Ftd>\n\u003Ctd>31,12 %, 183 xruns\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>16 plugins omx, 256\u003C\u002Ftd>\n\u003Ctd>12,66 %\u003C\u002Ftd>\n\u003Ctd>15,43 %\u003C\u002Ftd>\n\u003Ctd>14,60 %, 8 xruns\u003C\u002Ftd>\n\u003Ctd>16,85 %\u003C\u002Ftd>\n\u003Ctd>18,16 %, 52 xruns\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>16 amb Calf, 128\u003C\u002Ftd>\n\u003Ctd>13,61 %, 8 xruns\u003C\u002Ftd>\n\u003Ctd>18,85 %, 4 xruns\u003C\u002Ftd>\n\u003Ctd>21,88 %, 43 xruns\u003C\u002Ftd>\n\u003Ctd>21,96 %\u003C\u002Ftd>\n\u003Ctd>23,61 %\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Pianoteq 9, 128\u003C\u002Ftd>\n\u003Ctd>\u003C\u002Ftd>\n\u003Ctd>20,71 %, 7 xruns\u003C\u002Ftd>\n\u003Ctd>21,85 %, 4 xruns\u003C\u002Ftd>\n\u003Ctd>20,63 %, 3 xruns\u003C\u002Ftd>\n\u003Ctd>23,24 %, 10 xruns\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Pianoteq 9, 256\u003C\u002Ftd>\n\u003Ctd>\u003C\u002Ftd>\n\u003Ctd>20,66 %, 3 xruns\u003C\u002Ftd>\n\u003Ctd>20,94 %, 1 xrun\u003C\u002Ftd>\n\u003Ctd>20,24 %, 5 xruns\u003C\u002Ftd>\n\u003Ctd>20,38 %, 3 xruns\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>Pianoteq és un sol instrument i no té cadena. La cadena declarada de cop dona un 13,2 % (16 plugins omx, 128) i un\n12,64 % (256).\u003C\u002Fp>\n\u003Cul>\n\u003Cli>El doble de freqüència, més o menys el doble de càrrega: els conjunts d'efectes donen entre 1,8 i 2,1 vegades la xifra\nde 48 kHz a tots els amfitrions. Pianoteq costa entre 1,4 i 1,6 vegades, perquè part de la seva feina no creix amb la\nfreqüència.\u003C\u002Fli>\n\u003Cli>L'ordre dels amfitrions no canvia: la cadena és la més baixa a cada mida.\u003C\u002Fli>\n\u003Cli>A 96 kHz tornen els xruns on a 48 kHz no n'hi havia. La cadena es manté entre 0 i 8; jalv en té més que ningú.\u003C\u002Fli>\n\u003Cli>A 96 kHz, 128 mostres no són el límit: sense cap plugin, omx-clap-host, plugin-hostd i mod-host hi van córrer sense\nxruns (jalv no té amfitrió sense plugin).\u003C\u002Fli>\n\u003Cli>2 períodes contra 3 a 256 mostres: el mateix per als conjunts d'efectes, però Pianoteq i els 16 plugins omx donen més\ncàrrega amb 2 a omx-clap-host i a mod-host. A 96 kHz val la pena mantenir el tercer període, com el té Zynthian.\u003C\u002Fli>\n\u003Cli>La memòria no depèn de la freqüència: el PSS de cada amfitrió queda a menys d'1 MB de la xifra de 48 kHz.\u003C\u002Fli>\n\u003Cli>Dues files van fallar perquè el servidor JACK no va respondre en 10 s en una repetició: mod-host amb 16 plugins (el\nconjunt amb Calf) a 256 mostres i jalv amb 8 plugins omx a 128. Cap amfitrió no va refusar cap plugin.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Algunes files de 96 kHz tenen una dispersió gran i no es llegeixen soles: jalv amb 16 plugins omx a 128 mostres (de 22,96\na 31,52 %), omx-clap-host amb el conjunt amb Calf a 256 mostres i tres files amb 2 períodes.\u003C\u002Fp>\n\u003Ch2 id=\"amb-carrega\">Amb càrrega\u003C\u002Fh2>\n\u003Cp>La càrrega del banc de proves és un bucle ocupat a cada nucli que pot fer servir l'amfitrió més 256 MiB de memòria que es\nvan tocant. 16 plugins amb Calf a 48 kHz, 256 mostres, 3 períodes: la cadena dona entre un 6,68 i un 6,76 %, els\namfitrions d'un sol procés pugen fins a 0,4 punts (omx-clap-host 8,14 %, mod-host 7,87 %, jalv 8,82 %) i un worker per\nplugin, 17 processos, és el que té xruns (10,13 %, 30). Passa el mateix amb 16 plugins omx a 128 mostres: la cadena un\n6,94 % amb càrrega contra un 6,75 % sense, un worker per plugin 90 xruns. A 96 kHz totes les formes tenen xruns amb\naquesta càrrega, la cadena menys que les altres (d'1 a 9) junt amb jalv (0, amb 690 MB per als seus 16 processos).\u003C\u002Fp>\n\u003Ch2 id=\"el-limit-a-48-khz\">El límit a 48 kHz\u003C\u002Fh2>\n\u003Cp>A 48 kHz, 64 mostres tenen xruns a omx-clap-host, plugin-hostd i mod-host sense cap plugin carregat, amb prioritat de\nJACK 70 i amb la de sèrie de JACK, 10: és el límit de l'aparell i no d'un amfitrió: cap fila no diu que un amfitrió\nestigui net a 64. La prioritat 70 ajuda els amfitrions que fan la feina en un sol procés: mod-host amb 16 plugins un\n12,0 % amb prioritat 70 contra un 14,8 % amb 10.\u003C\u002Fp>\n\u003Ch2 id=\"temps-d-addicio\">Temps d'addició\u003C\u002Fh2>\n\u003Cp>16 plugins omx a 48 kHz i 128 mostres, amb l'amfitrió en marxa, tots els plugins afegits fins que l'últim sona:\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>plugin-hostd, afegits en una sola cadena\u003C\u002Fth>\n\u003Cth>plugin-hostd, cadena declarada de cop\u003C\u002Fth>\n\u003Cth>omx-clap-host\u003C\u002Fth>\n\u003Cth>mod-host\u003C\u002Fth>\n\u003Cth>plugin-hostd, un worker per plugin\u003C\u002Fth>\n\u003Cth>jalv\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>80 ms\u003C\u002Ftd>\n\u003Ctd>2,034 s\u003C\u002Ftd>\n\u003Ctd>397 ms\u003C\u002Ftd>\n\u003Ctd>364 ms\u003C\u002Ftd>\n\u003Ctd>640 ms\u003C\u002Ftd>\n\u003Ctd>13,8 s\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>Afegir a una cadena que ja corre és el camí ràpid. Una cadena declarada de cop engega el worker amb tota la llista, cosa\nque triga més; jalv engega un procés i un client JACK per plugin.\u003C\u002Fp>\n\u003Ch2 id=\"de-les-execucions-anteriors\">De les execucions anteriors\u003C\u002Fh2>\n\u003Cp>Aquestes seccions vénen d'execucions amb plugin-hostd 0.15.9 i omx-clap-core 0.26.4 amb el controlador dummy de JACK a\n48000 Hz i 256 mostres, contra la compilació de mod-host del mateix Zynthian, tret que una secció digui altres versions.\nEncara no s'han repetit amb la interfície d'àudio. jalv hi surt on es va mesurar; les taules anteriors de mod-host i\nomx-clap-host no l'incloïen.\u003C\u002Fp>\n\u003Ch3 id=\"temps-d-addicio-en-fred-i-en-calent\">Temps d'addició, en fred i en calent\u003C\u002Fh3>\n\u003Cp>En fred: s'engega l'amfitrió i s'hi afegeixen tots els plugins del conjunt, fins que corre l'últim; la mediana de tres.\nmod-host explora tot el món LV2 (1336 plugins en aquest aparell) abans de respondre i aquesta arrencada, de 800 a 945 ms,\nforma part del seu temps.\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>conjunt\u003C\u002Fth>\n\u003Cth>plugin-hostd, a una cadena\u003C\u002Fth>\n\u003Cth>plugin-hostd, un worker cadascun\u003C\u002Fth>\n\u003Cth>omx-clap-host\u003C\u002Fth>\n\u003Cth>mod-host\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>24 plugins, versions LV2\u003C\u002Ftd>\n\u003Ctd>549 ms\u003C\u002Ftd>\n\u003Ctd>1976 ms\u003C\u002Ftd>\n\u003Ctd>948 ms\u003C\u002Ftd>\n\u003Ctd>1459 ms\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>24 plugins, versions CLAP (Calf LV2)\u003C\u002Ftd>\n\u003Ctd>440 ms\u003C\u002Ftd>\n\u003Ctd>\u003C\u002Ftd>\n\u003Ctd>848 ms\u003C\u002Ftd>\n\u003Ctd>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>deu plugins LV2 de tercers\u003C\u002Ftd>\n\u003Ctd>255 ms\u003C\u002Ftd>\n\u003Ctd>497 ms\u003C\u002Ftd>\n\u003Ctd>458 ms\u003C\u002Ftd>\n\u003Ctd>1044 ms\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>En calent: cadenes de 2, 4 i 7 d'omx comp, delay i drive, versions LV2, amb l'amfitrió ja en marxa.\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>plugins\u003C\u002Fth>\n\u003Cth>mod-host\u003C\u002Fth>\n\u003Cth>plugin-hostd, a una cadena\u003C\u002Fth>\n\u003Cth>omx-clap-host\u003C\u002Fth>\n\u003Cth>plugin-hostd, un worker cadascun\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>2\u003C\u002Ftd>\n\u003Ctd>44,8 ms\u003C\u002Ftd>\n\u003Ctd>55,9 ms\u003C\u002Ftd>\n\u003Ctd>72,4 ms\u003C\u002Ftd>\n\u003Ctd>79,5 ms\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>4\u003C\u002Ftd>\n\u003Ctd>98 ms\u003C\u002Ftd>\n\u003Ctd>73 ms\u003C\u002Ftd>\n\u003Ctd>137 ms\u003C\u002Ftd>\n\u003Ctd>154 ms\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>7\u003C\u002Ftd>\n\u003Ctd>189 ms\u003C\u002Ftd>\n\u003Ctd>96 ms\u003C\u002Ftd>\n\u003Ctd>234 ms\u003C\u002Ftd>\n\u003Ctd>272 ms\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>mod-host és el més ràpid per afegir dos plugins a un amfitrió en marxa; a partir de quatre, ho és la cadena. Un worker propi\ncosta uns 40 ms per plugin: el procés i el seu client JACK.\u003C\u002Fp>\n\u003Ch3 id=\"instruments\">Instruments\u003C\u002Fh3>\n\u003Cp>Una instància amb 1, 8 i 16 notes premudes; càrrega DSP i PSS:\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>instrument\u003C\u002Fth>\n\u003Cth>plugin-hostd\u003C\u002Fth>\n\u003Cth>mod-host\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>mda Piano\u003C\u002Ftd>\n\u003Ctd>0,6 \u002F 2,0 \u002F 3,5 %, 29 MB\u003C\u002Ftd>\n\u003Ctd>0,6 \u002F 2,0 \u002F 3,5 %, 72 MB\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Odin 2\u003C\u002Ftd>\n\u003Ctd>3,6 \u002F 11,8 \u002F 21,3 %, 89 MB\u003C\u002Ftd>\n\u003Ctd>3,8 \u002F 11,7 \u002F 21,0 %, 132 MB\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Surge XT (CLAP a plugin-hostd, LV2 a mod-host)\u003C\u002Ftd>\n\u003Ctd>1,8 \u002F 4,2 \u002F 6,9 %, 68 MB\u003C\u002Ftd>\n\u003Ctd>2,0 \u002F 4,1 \u002F 6,9 %, 112 MB\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>La mateixa càrrega DSP als dos amfitrions i entre 43 i 44 MB menys de memòria a plugin-hostd. ZynAddSubFX i sfizz corren com\na programes JACK propis, com els fa córrer Zynthian, sense cap dels dos amfitrions: ZynAddSubFX amb Analog Pad 1 a 0,6 \u002F 1,6\n\u002F 2,6 %, 90 MB; sfizz amb el piano Salamander a 0,9 \u002F 2,9 \u002F 5,1 %, de 86 a 119 MB. Cap dels cinc no ofereix un grup de fils.\nUna repetició d'Odin 2 a plugin-hostd amb una nota va tenir un xrun. Com fan servir els nuclis els instruments és a\n\u003Ca href=\"\u002Fca\u002Fnotes\u002Finstruments-on-a-pi-5\">Instruments en una Pi 5\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3 id=\"on-se-n-va-el-temps-de-la-cadena\">On se'n va el temps de la cadena\u003C\u002Fh3>\n\u003Cp>perf sobre el fil d'àudio del worker, 24 plugins en una sola cadena, mesurat amb versions que porten símbols: els plugins i\nlibm se'n queden entre el 88 i el 92 %. El codi del mateix amfitrió en pren entre un 4 i un 7 %: les còpies de l'adaptador\nLV2 (1,9 % quan tots els plugins són LV2), les còpies a l'entrada i la sortida de la cadena (prop de l'1 %), la feina de\ncontrol i d'esdeveniments de l'adaptador (prop de l'1 % en LV2) i les proteccions de l'etapa amb la limitació (prop del 0,5\n%). El nucli del sistema i libjack en prenen el 0,5 %, on mod-host, amb la mateixa cadena, hi passa entre el 10 i el 14 %\nde les seves mostres, repartides entre els seus 24 clients JACK. El símbol més pesant és \u003Ccode>tanhf\u003C\u002Fcode> a omx-drive, del 14 al 15\n%.\u003C\u002Fp>\n\u003Ch3 id=\"moltes-cadenes-alhora\">Moltes cadenes alhora\u003C\u002Fh3>\n\u003Cp>Una prova de càrrega anterior, amb plugin-hostd 0.13.1 i el servidor JACK del mateix aparell a 48000 Hz i 256 mostres, va\nmantenir cadenes de quatre plugins LV2 amb 1, 2, 4, 8 i 16 cadenes, 60 s cada nivell. Amb 16 cadenes, els processos\namfitrions feien servir el 70,6 % d'un nucli agrupats (un worker per cadena, 60 plugins), el 100,8 % sols (un worker per\nplugin) i el 82,3 % amb jalv (64 plugins); la PSS era de 224,2, 359,3 i 2745,6 MB. Agrupats i sols van arribar a 16 cadenes\nsense cap límit; jalv s'hi va aturar per memòria, amb 2 xruns.\u003C\u002Fp>\n\u003Ch3 id=\"qualificacio-a-l-aparell-plugin-qualify-0-18-5\">Qualificació a l'aparell (plugin-qualify 0.18.5)\u003C\u002Fh3>\n\u003Cp>Amb el paquet de registres de qualificació omx-qualification-rpi5-zynthian-vangelis 2026110101: 1602 plugins (1341 LV2, 261 CLAP); 1079 qualificats\ndins del procés i 306 aïllats; 93 han fallat, 46 s'han penjat i 13 s'han refusat; 27 sense mesura, cadascun amb el seu motiu.\nTots els paquets s'instal·len des del canal i \u003Ccode>dpkg -V\u003C\u002Fcode> no hi troba res canviat; cadascun dels cinc instruments d'abans sona\namb les seves notes.\u003C\u002Fp>\n\u003Ch2 id=\"el-que-encara-no-s-ha-mesurat\">El que encara no s'ha mesurat\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>Escoltar a través de la interfície d'àudio i mesurar la latència sobre l'àudio per a cada amfitrió: totes les xifres\nd'aquí s'han llegit digitalment.\u003C\u002Fli>\n\u003Cli>Els instruments amb la interfície d'àudio i plugin-hostd 0.18.0; també la fila del grup de fils: Surge XT no declara cap\ngrup de fils, de manera que aquesta fila només pot mostrar que no canvia res; a més, aquesta vegada l'eina del banc de proves\nno va arribar als seus ports.\u003C\u002Fli>\n\u003Cli>La qualificació amb plugin-qualify 0.19.0, que substituirà els comptes d'aquí dalt quan s'hagi fet.\u003C\u002Fli>\n\u003Cli>El cost per bloc de cada plugin al quàntum del mateix Zynthian (128 i 256 mostres): la sonda de qualificació només\ncronometra blocs de 512 mostres.\u003C\u002Fli>\n\u003Cli>L'estimació de cost que un editor de cadenes demanaria al dimoni abans d'inserir un plugin.\u003C\u002Fli>\n\u003C\u002Ful>\n",1793954996439]