Benchmark delle prestazioni
Ultimo aggiornamento: 14/10/2026La conversione batch QV2QS scala su più core della CPU. I benchmark riportati di seguito misurano le prestazioni end-to-end al variare del numero di worker su un dataset fisso.
Ambiente di test
Il dataset di benchmark contiene 28 applicazioni QlikView con 234 fogli e 5.377 oggetti. Tutte le cartelle PRJ sono state pregenerate prima delle esecuzioni del benchmark. Ogni esecuzione ha distribuito tutte le 28 app in Qlik Cloud con ricarica e caricamento binario automatico abilitati.
La macchina di test dispone di 12 core CPU logici. QV2QS utilizza un pool di processi per la conversione locale (vero parallelismo CPU) e un pool di thread per la distribuzione cloud (I/O-bound).
Risultati end-to-end
Ogni colonna rappresenta il numero di worker. Le righe suddividono le due fasi sequenziali — conversione locale e distribuzione cloud — che compongono il totale end-to-end.
1w 5w 10w ▸ 11w ▸ 15w 20w 25w 30w
────────────────────────────────────────────────────────────────────────
Conversion
Elapsed 4m 28s 1m 30s 1m 22s 1m 15s 1m 06s 1m 11s 1m 11s 1m 13s
CPU time 3m 25s 5m 12s 8m 01s 7m 13s 7m 41s 8m 58s 10m 09s 10m 18s
Cloud 19m 12s 4m 32s 3m 26s 3m 23s 3m 00s 3m 00s 3m 09s 3m 13s
────────────────────────────────────────────────────────────────────────
Total 23m 40s 6m 02s 4m 48s 4m 38s 4m 06s 4m 11s 4m 20s 4m 26s
Speedup 1.0x 3.9x 4.9x 5.1x 5.8x 5.7x 5.5x 5.3x
▸ 11w = Auto-detect default (cores − 1)
▸ 15w = Observed peak
- Tempo trascorso — Tempo effettivo per la conversione locale: parsing dell'XML PRJ, attraversamento del grafo degli oggetti e generazione del JSON QS.
- Tempo di CPU — Tempo di CPU cumulativo consumato da tutti i processi di lavoro durante la conversione. Il tempo di CPU aumenta con il numero di worker poiché ogni processo aggiuntivo introduce un overhead di scheduling e di memoria.
- Cloud — Tempo effettivo per la distribuzione nel cloud: creazione dell'app, caricamento dei file multimediali, build, ricaricamento e caricamento binario.
- Totale — Tempo effettivo end-to-end (Tempo di conversione trascorso + Cloud).
Comportamento di scalabilità
- La conversione locale scala linearmente fino al numero di core della CPU. Passare da 1 a 10 worker su una macchina a 12 core riduce il tempo di conversione del 70%.
- La distribuzione cloud scala con il numero di thread poiché il lavoro è vincolato all'I/O (richieste di rete all'API di Qlik Cloud). La fase cloud scende da 19 minuti con 1 worker a 3 minuti con 10 worker.
- Oltre il numero di core della CPU, ulteriori worker aggiungono un overhead di pianificazione dei processi senza alcun miglioramento significativo. Le esecuzioni con 20 e 30 worker sono più lente rispetto all'esecuzione con 15 worker.
- Il picco di throughput si verifica con circa 15 worker su questa macchina a 12 core (accelerazione di 5,8x). Il valore predefinito di rilevamento automatico pari a core meno uno (11 worker, speedup di 5,1x) si trova entro il 12% dal picco senza penalità da oversubscription.
- Il tempo di CPU aumenta costantemente con il numero di worker. Con 11 worker, la conversione consuma 7m 13s di tempo CPU cumulativo. Con 30 worker, lo stesso lavoro richiede 10m 18s — un aumento del 43% del costo di CPU senza alcun miglioramento del tempo wall-clock.
La fase cloud include una ricarica mediante caricamento binario per ciascuna app. I tempi cloud dipendono dal volume dei dati dell'app, dalla complessità della ricarica, dal carico del tenant e dall'allocazione del motore Qlik Cloud. Applicazioni più grandi o tenant più attivi produrranno tempi cloud più lunghi rispetto a quelli mostrati qui.
Concorrenza di distribuzione cloud
Qlik Cloud applica un limite al numero di ricaricamenti simultanei per tenant. Quando la distribuzione batch viene eseguita con un numero elevato di worker, le richieste di ricaricamento che superano il limite del tenant vengono messe in coda lato server. L'accelerazione della fase cloud si stabilizza una volta raggiunto il limite di ricaricamento simultaneo, indipendentemente dalle risorse locali di CPU e thread.
Per informazioni dettagliate sui limiti a livello di tenant, vedere Limiti delle risorse di Qlik Cloud. Per le specifiche complete dei guardrail di capacità di Qlik Cloud, vedere Specifiche e guardrail di capacità di Qlik Cloud.