CUE/IO automātiskais Benchmark
Benchmark ir pieejams CUE/IO navigācijas sadaļā Benchmark. To drīkst sākt
tikai IDLE stāvoklī. Visu testa laiku tiek bloķēta RECORD, TIMECODE, PLAYER,
Scheduler, tīkla konfigurēšanas un restartēšanas darbību paralēla palaišana.
Atcelšana ir kooperatīva: vispirms tiek apturēti testa pavedieni un audio
procesi, pēc tam tiek atjaunots IDLE Art-Net monitors.
Ko tests dara
Katram izvēlētajam līmenim (1, 4, 8, 16, 32, 64, 128 universi)
Benchmark ģenerē deterministiskas 512 kanālu ArtDmx paketes ar neatkarīgu
sekvenci 1…255 katram universam. Atkarībā no scenārija tas:
record_only— nosūta paketes uz lokālu UDP uztvērēju un ieraksta tās;player_only— izveido etalona failu un atskaņo to uz lokālu UDP uztvērēju;full_cycle— ieraksta paketes, pēc tam atskaņo tieši ierakstīto failu.
RECORD, PLAYER un Benchmark izmanto vienu kopīgu esošā artnet.dat formāta
kodeku: 4 baitu laika vērtība milisekundēs tīkla baitu secībā, 2 baitu paketes
garums un nemainīta UDP pakete (!IH + neapstrādāta pakete). Faila formāts nav
mainīts.
Dati tiek salīdzināti pēc pakešu skaita, secības un SHA-256. Papildus tiek mērīti pakešu zudumi, Art-Net secības kļūdas, novēlotas Player paketes, tīkla ligzdas kļūdas, CPU, RAM, temperatūra, brīvā diska vieta un testa failu apjoms. Globālie CUE/IO Art-Net/audio skaitītāji tiek salīdzināti kā sākuma un beigu starpība, tādēļ iepriekšēja satiksme rezultātu nesabojā.
Audio
Ja audio pārbaude ir ieslēgta, CUE/IO izmanto konfigurēto ALSA ievades ierīci
RECORD posmā un konfigurēto izvadi PLAYER posmā. Komandas tiek palaistas bez
shell=True, ar fiksētu argumentu sarakstu, noildzi un centrāli reģistrētiem
procesiem. Rezultātā tiek uzrādīti ALSA bufera iztrūkumi (underrun) un
pārpildes (overrun).
Programmatūras procesa sākuma laiks nav fizisks audio/DMX sinhronizācijas
mērījums. Fizisku nobīdi drīkst apstiprināt tikai ar audio atgriezenisko cilpu
(loopback) un kopīgu PCM/DMX marķieri. Ja šāds mērījums nav pieejams,
rezultātā ir audio_sync_measured: false, tiek dots brīdinājums un audio
profilam drošs universu skaits netiek sertificēts.
Rezultāts un drošais universu skaits
PASS— dati sakrīt, nav zudumu/kļūdu un resursu rezerves ir pietiekamas.PASS WITH WARNINGS— datu integritāte ir saglabāta, bet trūkst sensora, tests ir īss vai kāda rezerve/mērījums nav pietiekams sertifikācijai.FAIL— ir datu neatbilstība, pakešu zudumi, secības, tīkla ligzdas vai audio kļūda, vai kritiska CPU, RAM vai temperatūra.
API un saglabātais rezultāts šos tehniskos spriedumus nemaina. Lietotāja
interfeiss pabeigtu testu pasniedz konstruktīvi: Benchmark pabeigts,
Ieteicams: N universi un, ja attiecināms, M universi pārsniedza drošās
robežas. Pārsniegums ir dzintara, nevis kļūdas sarkanajā krāsā; sarkans ir
rezervēts situācijai, kad pats testa process neizdevās vai beidzās ar kļūdu.
recommended_universe_count ir augstākais nepārtraukti pabeigtais pilnā cikla
līmenis ar PASS vai PASS WITH WARNINGS; ja tajā ir brīdinājumi, lietotāja
saskarne skaidri norāda, ka tas nav stingrs drošības apstiprinājums.
safe_universe_count nemainīgi paliek stingrais sertifikācijas lauks, bet
exceeded_universe_count norāda pirmo tehniski neizturēto līmeni.
Drošo iekšējo universu skaitu nosaka tikai full_cycle profilam un tikai kā
augstāko nepārtraukto līmeni no 1 uz augšu. Katram apstiprinātajam līmenim
nepieciešams:
- precīzs RECORD un PLAYER datu sakritības rezultāts;
0pakešu zudumu, secības, tīkla un novēlotu pakešu kļūdu;- CPU ne vairāk par 85%, RAM ne vairāk par 85%;
- izmērāma temperatūra ne vairāk par 70 °C;
- vismaz 10 sekunžu tests katram līmenim;
- ja audio ieslēgts —
0bufera iztrūkumu/pārpilžu, pieejamas ierīces un ar marķieri izmērīta audio/DMX nobīde ne vairāk par 10 ms.
Pēdējais rezultāts tiek atomiski saglabāts un paliek pieejams pēc testa. Šovu faili netiek izmantoti vai mainīti; pagaidu Benchmark faili pēc testa, kļūdas, atcelšanas un starta tiek iztīrīti.
Būtisks tīkla ierobežojums
Viena Raspberry Pi iekšējais Benchmark ar atgriezenisko cilpu (loopback)
pilnībā netestē fizisko Ethernet PHY, kabeli, komutatoru, tīkla rindas,
Broadcast slodzi vai ārējos Art-Net mezglus. Tas pārbauda CUE/IO, lokālo
operētājsistēmas UDP steku, disku un paša Pi resursus. Pilnam fiziskā Ethernet
testam nepieciešama otra ierīce kā ārējs Art-Net sūtītājs vai uztvērējs.