In the modern industry it is crucial to have the ability to test new ideas rapidly. Traditionally a prototype is built for this purpose, but with the advent of new and more powerful computers is it possible to further speedup this process via a simulation. In recent years the Modelica language is gradually becoming the most used standard for modeling and simulation of physical systems. However, as the models size grow, the current state-of-the-art Modelica compilers can not produce quality code that can mantain an acceptable grade of performance. We believe that a new Modelica compiler design can solve this problem. Thus, we follow a modern design paradigm and a robust technological base to provide a proof of concept that demonstrates the performance scalability needed by the industry without losing the advantages provided by a standardized modeling language. In this thesis we study the state-of-the-art, showing the possible flaws contained in the current implementation. We also propose possible solution to overcome these issues. We test our solution via an initial compiler prototype. The experimental campaign we conduced shows an excellent improvement over the current state-of-the-art. In particular, we highlight use cases with an exponential gain in terms of time to solution. These results are promising and convince us that future efforts for the creation of a fully featured compiler can lead us to a solution with a great impact on the industry.

Nell'industria moderna la possibilità di testare nuove idee rapidamente assume un'importanza cruciale. Tradizionalmente per raggiungere questo scopo si costruisce un prototipo, ma con l'avvento di computer sempre più potenti è possibile accelerare ulteriormente questo processo usando una simulazione. Negli ultimi anni il linguaggio Modelica si sta imponendo come lo standard più usato per la modellazione e la simulazione dei sistemi fisici. Purtroppo, con l'aumento della dimensione dei modelli, gli attuali compilatori di Modelica non riescono a produrre codice di qualità che possa riuscire a mantenere prestazioni accettabili. Noi crediamo che per risolvere questo problema ci sia bisogno di un nuovo tipo di compilatore Modelica. Per questo motivo abbiamo seguito un paradigma moderno per il design del compilatore, unito ad una robusta base tecnologica per arrivare ad una proof of concept che possa avere la scalabilità sulle prestazioni richiesta dall'industria senza perdere i vantaggi che un linguaggio di modellazione standard può portare. In questa tesi abbiamo studiato lo stato dell'arte mostrando i difetti contenuti nell'implementazione corrente. Abbiamo anche proposto alcune possibili soluzioni che risolvono questi problemi. Abbiamo testato le nostre soluzioni con un prototipo di compilatore. Le analisi che abbiamo condotto dimostrano un eccellente miglioramento rispetto allo stato dell'arte con un guadagno esponenziale per quanto riguarda il tempo richiesto per la soluzione. Questi risultati sono promettenti e ci convincono che gli sforzi futuri verso la realizzazione di un compilatore completo possano portare ad una soluzione di grande impatto per l'industria.

Structural pitfalls of state-of-the-art Modelica compilers : an explorative analysis

BALDINO, EMANUELE
2017/2018

Abstract

In the modern industry it is crucial to have the ability to test new ideas rapidly. Traditionally a prototype is built for this purpose, but with the advent of new and more powerful computers is it possible to further speedup this process via a simulation. In recent years the Modelica language is gradually becoming the most used standard for modeling and simulation of physical systems. However, as the models size grow, the current state-of-the-art Modelica compilers can not produce quality code that can mantain an acceptable grade of performance. We believe that a new Modelica compiler design can solve this problem. Thus, we follow a modern design paradigm and a robust technological base to provide a proof of concept that demonstrates the performance scalability needed by the industry without losing the advantages provided by a standardized modeling language. In this thesis we study the state-of-the-art, showing the possible flaws contained in the current implementation. We also propose possible solution to overcome these issues. We test our solution via an initial compiler prototype. The experimental campaign we conduced shows an excellent improvement over the current state-of-the-art. In particular, we highlight use cases with an exponential gain in terms of time to solution. These results are promising and convince us that future efforts for the creation of a fully featured compiler can lead us to a solution with a great impact on the industry.
CHERUBIN, STEFANO
TERRANEO, FEDERICO
ING - Scuola di Ingegneria Industriale e dell'Informazione
20-dic-2018
2017/2018
Nell'industria moderna la possibilità di testare nuove idee rapidamente assume un'importanza cruciale. Tradizionalmente per raggiungere questo scopo si costruisce un prototipo, ma con l'avvento di computer sempre più potenti è possibile accelerare ulteriormente questo processo usando una simulazione. Negli ultimi anni il linguaggio Modelica si sta imponendo come lo standard più usato per la modellazione e la simulazione dei sistemi fisici. Purtroppo, con l'aumento della dimensione dei modelli, gli attuali compilatori di Modelica non riescono a produrre codice di qualità che possa riuscire a mantenere prestazioni accettabili. Noi crediamo che per risolvere questo problema ci sia bisogno di un nuovo tipo di compilatore Modelica. Per questo motivo abbiamo seguito un paradigma moderno per il design del compilatore, unito ad una robusta base tecnologica per arrivare ad una proof of concept che possa avere la scalabilità sulle prestazioni richiesta dall'industria senza perdere i vantaggi che un linguaggio di modellazione standard può portare. In questa tesi abbiamo studiato lo stato dell'arte mostrando i difetti contenuti nell'implementazione corrente. Abbiamo anche proposto alcune possibili soluzioni che risolvono questi problemi. Abbiamo testato le nostre soluzioni con un prototipo di compilatore. Le analisi che abbiamo condotto dimostrano un eccellente miglioramento rispetto allo stato dell'arte con un guadagno esponenziale per quanto riguarda il tempo richiesto per la soluzione. Questi risultati sono promettenti e ci convincono che gli sforzi futuri verso la realizzazione di un compilatore completo possano portare ad una soluzione di grande impatto per l'industria.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
2018_12_Baldino.pdf

accessibile in internet solo dagli utenti autorizzati

Descrizione: Testo della tesi
Dimensione 666.88 kB
Formato Adobe PDF
666.88 kB Adobe PDF   Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/144734