Misurare il consumo energetico dei propri programmi

🌡️ Introduzione Per chi gestisce un datacenter, o anche un semplice server homelab, l’arrivo del caldo estivo si traduce in un aumento dell’uso dell’aria condizionata. In questo post mi sono chiesto come un ingegnere Linux possa misurare quanta energia sta consumando il sistema, in modo da poter iniziare a ragionare sull’ottimizzazione dei carichi di lavoro (workload) per ottenere pattern di consumo energetico migliori. 🔋 Consumo energetico in idle Come punto di partenza, misuriamo quanta energia consuma il mio PC quando è in idle, cioè non fa assolutamente nulla; o meglio: nulla di utile ai fini del calcolo o di un servizio, ma esegue solo le solite attività predefinite del sistema operativo. ...

30 giugno 2024 · Andrea Manzini

Testing Headless di Applicazioni GUI PySide/PyQt con pytest-qt

🤓 Introduzione Il testing manuale delle applicazioni GUI può diventare noioso e soggetto a errori con l’aumento delle funzionalità e della complessità. Il testing headless offre una soluzione automatizzando le interazioni dell’interfaccia utente (UI) senza la necessità di un display fisico. Questo approccio consente un’esecuzione più rapida dei test, una migliore ripetibilità e una perfetta integrazione con le pipeline di continuous integration e continuous delivery (CI/CD). In questo post esploreremo come sfruttare pytest-qt, un potente framework per il testing headless di applicazioni PySide/PyQt. ...

22 maggio 2024 · Andrea Manzini

Un approccio diverso alle interfacce utente da terminale

Introduzione Bubbletea è un framework con una filosofia basata su The Elm Architecture: Per farla semplice, si divide in tre parti: Model: lo stato della tua applicazione View: un modo per trasformare il tuo stato in qualcosa da mostrare a schermo Update: un modo per aggiornare lo stato in base ai messaggi Il runtime del framework gestisce tutto il resto: dall’orchestrazione dei messaggi ai dettagli di rendering a basso livello. Esempio Ipotizziamo di voler creare la classica lista di cose da fare (to-do list): ...

3 maggio 2024 · Andrea Manzini

SEGFAULT: Debugging di un'applicazione che va in crash

🙀 Qualcosa si rompe Se usate Linux ed eseguite alcune applicazioni, potreste aver visto a volte un messaggio di errore simile a questo: [1] 24975 segmentation fault (core dumped) cosa significa e come può essere utile? Scopriamolo insieme. 🧪 Preparazione del laboratorio Per realizzare un caso di studio adeguato, abbiamo bisogno di un programma che vada in crash. Naturalmente al giorno d’oggi sono molto rari 😁 quindi ne creeremo uno noi stessi, mettendo in mostra le nostre peggiori abilità e pratiche di programmazione in C. ...

5 aprile 2024 · Andrea Manzini

This site does not use cookies or collect any personal data. © 2026 Andrea Manzini.