In the following thesis I consider the realm of Complex Events Processing, the answer to the necessity of extracting new information from continuous streams of events data flowing from peripherals observers to a central system, extracting patterns of events temporally bound. More in details I will focus on TRex, a CEP middleware based on the TESLA formal language, developed by Cugola and Margara. The core component of this middleware is the CEP engine; the kind of information processed and algorithm employed by the engine are suitable to offer a great level of parallelism. As a result in this thesis I will describe the development of a new engine for TRex that uses NVIDIA CUDA to exploit the processing power of modern GPUs to improve CEP performance. My work extends a test project developed by Cugola and Margara that already focused on this goal. The resulting engine, called GTRex, proved to be very efficient in many scenarios and with the same API and feature set of the default TRex engine, CPU based. This allowed me to modify the TRex middleware to integrate both engines at the same time. The two can now be used interchangeably applying each of them to the rules it executes more efficiently.

In questa tesi mi concentro sul mondo del Complex Event Processing, la risposta alla necessità di estrarre nuova informazione da flussi continui di eventi che scorrono da osservatori periferici ad un sistema centrale, che estrae sequenze di eventi legati temporalmente legati. Più in dettaglio mi focalizzerò su TRex, un middleware per il CEP basato sul linguaggio formale TESLA, sviluppato da Cugola e Margara. Il componente chiave di questo middleware è il motore CEP; il tipo di informazione e gli algoritmi adottato dal motore ben si prestano ad offrire un notevole livello di parallelismo. Di conseguenza in questa tesi descriverò lo sviluppo di un nuovo motore per TRex che usa NVIDIA CUDA per sfruttare la potenza computazionale delle GPU moderne per migliorare le prestazioni, estendendo un progetto di test sviluppato da Cugola e Margara che già si focalizzava su questo obiettivo. Il motore risultante, chiamato GTRex, ha dimostrato di essere molto efficiente in molti ambiti e di avere pari funzionalità rispetto al motore standard di TRex. Ciò mi ha consentito di modificare il middleware TRex per integrare entrambi i motori contemporaneamente. I due possono ora essere usati intercambiabilmente assegnando a ciscuno le regole eseguite più efficientemente.

GTrex : implementing a CEP engine for the TESLA language on GPU

ROGORA, DANIELE
2012/2013

Abstract

In the following thesis I consider the realm of Complex Events Processing, the answer to the necessity of extracting new information from continuous streams of events data flowing from peripherals observers to a central system, extracting patterns of events temporally bound. More in details I will focus on TRex, a CEP middleware based on the TESLA formal language, developed by Cugola and Margara. The core component of this middleware is the CEP engine; the kind of information processed and algorithm employed by the engine are suitable to offer a great level of parallelism. As a result in this thesis I will describe the development of a new engine for TRex that uses NVIDIA CUDA to exploit the processing power of modern GPUs to improve CEP performance. My work extends a test project developed by Cugola and Margara that already focused on this goal. The resulting engine, called GTRex, proved to be very efficient in many scenarios and with the same API and feature set of the default TRex engine, CPU based. This allowed me to modify the TRex middleware to integrate both engines at the same time. The two can now be used interchangeably applying each of them to the rules it executes more efficiently.
ING - Scuola di Ingegneria Industriale e dell'Informazione
18-dic-2013
2012/2013
In questa tesi mi concentro sul mondo del Complex Event Processing, la risposta alla necessità di estrarre nuova informazione da flussi continui di eventi che scorrono da osservatori periferici ad un sistema centrale, che estrae sequenze di eventi legati temporalmente legati. Più in dettaglio mi focalizzerò su TRex, un middleware per il CEP basato sul linguaggio formale TESLA, sviluppato da Cugola e Margara. Il componente chiave di questo middleware è il motore CEP; il tipo di informazione e gli algoritmi adottato dal motore ben si prestano ad offrire un notevole livello di parallelismo. Di conseguenza in questa tesi descriverò lo sviluppo di un nuovo motore per TRex che usa NVIDIA CUDA per sfruttare la potenza computazionale delle GPU moderne per migliorare le prestazioni, estendendo un progetto di test sviluppato da Cugola e Margara che già si focalizzava su questo obiettivo. Il motore risultante, chiamato GTRex, ha dimostrato di essere molto efficiente in molti ambiti e di avere pari funzionalità rispetto al motore standard di TRex. Ciò mi ha consentito di modificare il middleware TRex per integrare entrambi i motori contemporaneamente. I due possono ora essere usati intercambiabilmente assegnando a ciscuno le regole eseguite più efficientemente.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
Tesi.pdf

accessibile in internet per tutti

Descrizione: Testo della tesi
Dimensione 1.78 MB
Formato Adobe PDF
1.78 MB 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/88428