Qt performance profiling

Ottimizzazione del codice Qt su hardware specifico

Qt performance profiling

"Integrarsi con la tecnologia Consilium, all'avanguardia come funzionalità e standard di sicurezza nel settore dei radar militari, ed avere la possibilità di lavorare con la loro piattaforma hardware custom, è stata un'occasione di mettersi alla prova in un ambiente collaborativo ma con altissime esigenze di performance." 

Lorenzo Mancini - Computer Programmer @ Develer

La richiesta

Consilium è un fornitore leader mondiale di prodotti e sistemi per la sicurezza nella navigazione, con un gruppo dedicato allo sviluppo di radar per uso civile e militare.  È presente direttamente in 19 paesi ed ha costruito una rete vendita in più di 50.

La richiesta è stata quella di aumentare le performance dei software sviluppati in Qt che acquisiscono dati con uno specifico hardware, aspetto critico per i mercati dove opera Consilium.

Oltre a questo, per facilitare la condivisione ed il riuso del lavoro nei team di sviluppo Qt, è stata chiesta una consulenza sul workflow interno di sviluppo.  Subversion, al tempo in uso in Consilium, non permetteva di evolvere e completare il workflow aziendale, e rendeva complicata la coordinazione tra i più team in sviluppo sullo stesso progetto.

Vantaggi introdotti dalle nostre soluzioni

  • introdotte metriche precise per misurare le performance delle applicazioni e migliorarle
  • ottimizzazione del software per l'hardware scelto da Consilium
  • migrazione del repository da SVN verso Git permettendo una più facile collaborazione

In quale modo la nostra metodologia ci ha aiutati

Le nostre soluzioni in questo caso sono le persone. Il nostro staff certificato Qt Specialist ha identificato quali potevano essere i colli di bottiglia nell'applicazione e come eliminarli.  In più è stata realizzata una riscrittura in OpenGL di una parte critica per le performance, per misurare il margine di ottimizzazione ottenbile sulla piattaforma custom di Consilium.

Per la parte di consulenza sulle modalità di controllo revisione, Develer ha proposto un workflow basato su Git per ottimizzare i flussi di lavoro.  Oltre a facilitare notevolmente la risoluzione dei conflitti, il nuovo workflow rende più facile tenere sincronizzate le numerose versioni custom delle applicazioni Consilium.

In quale modo l'open source ha aiutato il progetto

Per entrambe le attività portate avanti nel progetto è stato fondamentale poter utilizzare software open source, già pronto e testato, sia nella fase di profiling (Valgrind, oprofile) che nella fase successiva di prototipazione OpenGL (apitrace, glintercept).

Il progetto in breve

Richieste:

  • aumento delle performance software su hardware specifico
  • ottimizzazione flussi di sviluppo dei team interni

Cosa ha fatto Develer:

  • profiling del codice per velocizzare la applicazioni
  • ottimizzazione del software per l'hardware scelto da Consilium
  • migrazione del repository da SVN verso Git permettendo una più facile collaborazione

Cliente

Consilium

Azienda produttrice di sistemi di sicurezza per la navigazione e l'automazione