523 resultados para GPGPU, CUDA, OpenCL, Programmazione Parallela


Relevância:

10.00% 10.00%

Publicador:

Resumo:

Ballerina è un linguaggio open-source, cloud-native, progettato, quindi, con l'intento di alleggerire il carico dello sviluppo e dell'integrazione associato alle applicazioni aziendali. Questo linguaggio semplifica il modo in cui un programma comunica con la rete, che di solito avviene tramite un API (Application Program Interface). Ballerina tenta di creare un sistema integrato, riunendo i concetti, le idee e gli strumenti essenziali di integrazione di un sistema distribuito e offrendo un ambiente concorrente e sicuro per supportare lo sviluppo di API.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

La Stereo Vision è un popolare argomento di ricerca nel campo della Visione Artificiale; esso consiste nell’usare due immagini di una stessa scena,prodotte da due fotocamere diverse, per estrarre informazioni in 3D. L’idea di base della Stereo Vision è la simulazione della visione binoculare umana:le due fotocamere sono disposte in orizzontale per fungere da “occhi” che guardano la scena in 3D. Confrontando le due immagini ottenute, si possono ottenere informazioni riguardo alle posizioni degli oggetti della scena.In questa relazione presenteremo un algoritmo di Stereo Vision: si tratta di un algoritmo parallelo che ha come obiettivo di tracciare le linee di livello di un area geografica. L’algoritmo in origine era stato implementato per la Connection Machine CM-2, un supercomputer sviluppato negli anni 80, ed era espresso in *Lisp, un linguaggio derivato dal Lisp e ideato per la macchina stessa. Questa relazione tratta anche la traduzione e l’implementazione dell’algoritmo in CUDA, ovvero un’architettura hardware per l’elaborazione pa- rallela sviluppata da NVIDIA, che consente di eseguire codice parallelo su GPU. Si darà inoltre uno sguardo alle difficoltà che sono state riscontrate nella traduzione da *Lisp a CUDA.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

In questi anni, c’è stato un grande sviluppo negli standard wireless nel mondo della televisione, della radio e delle comunicazioni mobili. Questo ha portato con sé problemi di compatibilità tra le reti wireless e ha limitato lo sviluppo di nuove funzionalità e servizi. La Software Defined Radio rappresenta una soluzione di flessibilità per affrontare questa serie di problematiche. In un sistema di comunicazione digitale, le informazioni viaggiano su un canale che è soggetto a rumore ed interferenza; perciò, per garantire robustezza e affidabilità alle applicazioni nella comunicazione digitale, i sistemi richiedono l’uso di codici di correzione degli errori, basati su schemi di codifica di canale. Esistono diverse tipologie di codici per la correzione degli errori, tra le quali il turbo codice, utilizzato nei sistemi LTE. Questo lavoro presenta la progettazione e la successiva ottimizzazione di un turbo encoder per sistemi LTE su una scheda FPGA, la quale, a differenza di altri dispositivi, meglio si presta a questo scopo, grazie alla caratteristica di riprogrammabilità. Dapprima viene presentato un turbo encoder sequenziale, il quale viene ottimizzato creandone una versione parallela. I risultati mostrano che l’architettura parallela presenta prestazioni, in termini di throughput, quattro volte migliori di quella sequenziale, a fronte di un lieve aumento dell’uso delle risorse della scheda. Confrontando questo turbo encoder ottimizzato con un progetto presente in letteratura, si nota che l’efficienza d’area risulta maggiore con un fattore circa pari a 3.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Il presente lavoro si concentra sugli scostamenti di tipo morfosintattico tra un discorso orale e formale-istituzionale tenuto in italiano e le rispettive rese, in interpretazione simultanea, verso il francese e il tedesco. Alla base dell’osservazione condotta vi è la volontà di comprendere fino a che punto un interprete professionista si discosti dalla struttura morfosintattica del testo originale e quali strategie attui, partendo dall'ipotesi che nei punti di maggiore marcatezza morfosintattica l'interprete si allontani maggiormente dalla struttura dell'originale. Dapprima si discutono alcune delle caratteristiche dell’italiano contemporaneo. In seguito, viene proposta un’osservazione teorica dei punti di maggiore vicinanza o lontananza tra la morfosintassi dell’italiano e delle due lingue straniere considerate. Vengono poi affrontate le principali difficoltà in interpretazione simultanea (IS), passando in rassegna le più frequenti strategie di risposta a tali difficoltà. Segue un’illustrazione della metodologia seguita al fine di reperire e raccogliere i discorsi pronunciati nelle Commissioni del Parlamento europeo per la costituzione di un corpus parallelo trilingue su SketchEngine. Infine, vengono presentati i risultati emersi dall'osservazione parallela basata sul corpus, in un confronto in cui vengono individuati i punti di comunanza e di divergenza tra l’originale nella lingua di partenza e le rese nelle lingue di arrivo in corrispondenza di alcuni fenomeni morfosintattici scelti.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

In questo lavoro di tesi si analizzerà un metodo per risolvere il problema del PageRank alternativo rispetto al tradizionale metodo delle potenze. Verso la fine degli anni '90, con l’avvento del World Wide Web, fu necessario sviluppare degli algoritmi di classificazione in grado di ordinare i siti web in base alla loro rilevanza. Davanti a questa sfida i due matematici A.N.Langville e C.D.Meyer svilupparono il metodo SIAD, "special iterative aggregation/disaggregation method". Lo scopo di questa tesi è in primo luogo di ricostruire il metodo SIAD e analizzarne le proprietà. Seguendo le analisi in un articolo di I.C.Ipsen e S.Kirkland, si ricostruirà nel dettaglio il metodo SIAD, così da esplicitare la convergenza asintotica del metodo in relazione al complemento stocastico scelto. In secondo luogo si analizzerà il metodo SIAD applicato ad una matrice di Google che rispetta ipotesi determinate, le matrici di Google sono solitamente utilizzate per rappresentare il problema del PageRank. Successivamente, si dimostrerà un importante teorema che prova come per ogni matrice di Google si possa individuare un complemento stocastico per cui il metodo SIAD converge più velocemente del metodo delle potenze. Infine, nell’ultimo capitolo si implementerà con il inguaggio di programmazione Matlab il metodo SIAD per una matrice generica e per una matrice di Google. In particolare, si sfrutterà la struttura della matrice di Google per ridurre sensibilmente il costo computazionale del metodo quando applicato applicato ad una tale matrice.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Le app mobile sono sempre più pervasive nella vita quotidiana delle persone: gli smartphone hanno rivoluzionato il modo di interagire degli utenti con le varie organizzazioni. Che sia per l'accesso al proprio conto corrente, per la visualizzazione delle notizie quotidiane o per il semplice svago, gli utenti usano sempre più il mondo mobile come canale privilegiato per la fruizione dei contenuti digitali. Il sempre maggior successo delle applicazioni mobile ha sempre più spostato l'attenzione dei malintenzionati sugli smartphone, che sono diventati così uno degli obiettivi più popolari per i cyberattacchi: ciò comporta nuove sfide per le organizzazioni al fine di garantire la sicurezza di dati e sistemi. Risulta fondamentale per un organizzazione in particolare mantenere un controllo sulle proprie applicazioni mobile: configurazioni errate, errori di programmazione, inclusione di librerie software vulnerabili o malevoli e la presenza di credenziali cablate nel codice o nelle configurazioni rappresentano un notevole rischio per la confidenzialità, l'integrità e disponibilità di dati e sistemi. Se risulta fondamentale nello sviluppo un approccio che utilizzi i principi della Security by Design, risulta ancora più importante un presidio costante sulle applicazioni e la costruzione di un ciclo di vita del software sicuro (SSDLC). A tal fine la proposta del progetto di tesi riguarda l'analisi delle principali minacce e vulnerabilità delle applicazioni mobile e lo sviluppo di uno strumento di analisi dei pacchetti mobile (su piattaforma Android o iOS) al fine di identificare possibili rischi prima della pubblicazione dei pacchetti sugli store ufficiali.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Il progetto di tesi è stato sviluppato durante il periodo di tirocinio svolto all’interno del “Laboratorio di Radio Scienza ed Esplorazione Planetaria” da un'esperienza da cui prende il nome lo stesso elaborato: ”Numerical integration errors in deep space orbit determination”. Lo scopo del sopraccitato laboratorio è stato quello di studiare in modo approfondito il problema kepleriano dei due corpi, per poi passare ad un’analisi del problema dei tre corpi e successivamente a n corpi (con particolare attenzione alle orbite dei satelliti medicei di Giove). Lo studio è stato affiancato ad un costante utilizzo della piattaforma di programmazione Matlab per l’elaborazione e la stesura di codici per il calcolo di traiettorie orbitali ed errori numerici. Infatti, il fulcro del lavoro è stato proprio il confronto di vari integratori e degli errori numerici derivanti dall’integrazione. Nella tesi, dapprima, viene introdotto il sistema Gioviano, vengono presentati i satelliti medicei, delineate le caratteristiche fisiche fondamentali e i principali motivi che portano ad avere particolare interesse nel conoscere lo sviluppo orbitale di tale sistema. In seguito, l'elaborato, dopo una dettagliata descrizione teorica del problema dei due corpi, presenta un codice per la rappresentazione di orbite kepleriane e il calcolo dei relativi errori commessi dal metodo numerico rispetto a quello analitico. Nell'ultimo capitolo, invece, il problema è esteso a più corpi dotati di massa e a tal proposito viene proposto un codice per la rappresentazione delle orbite descritte nel tempo da n corpi, date le condizioni iniziali, e il calcolo dei rispettivi errori nel sistema di riferimento (r,t,n). In merito a ciò, vengono infine testati diversi integratori per cercare quello con le migliori performance e sono poi analizzati alcuni parametri in input al problema per verificare sotto quali condizioni l’integratore lavora meglio.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Distribuire un’applicazione che soddisfi i requisiti del cliente e che sia in grado di accogliere rapidamente eventuali modifiche è, al giorno d’oggi, d’obbligo per aziende che si occupano di applicazioni mobile che vogliano rimanere competitive sul mercato. Il principale fattore chiave in grado di mantenere un’azienda al passo con la continua evoluzione sia del mercato che delle tecnologie mobile è la continua innovazione e ottimizzazione dell’intero processo di sviluppo. La collaborazione e la comunicazione tra diversi team, l’utilizzo di cicli iterativi di sviluppo, i rilasci frequenti e l’automazione dei test sono alcune delle pratiche incentivate dalla cultura DevOps, adottabile con successo (si vedrà in questa tesi) anche per lo sviluppo di applicazioni mobile. Innovare e ottimizzare il processo di sviluppo non significa solo automatizzare l’esecuzione dei task. Un ruolo importante è giocato anche da aspetti legati all’applicazione: l’architettura, il paradigma di programmazione, e gli strumenti utilizzati. In particolare, al fine di applicare il principio “Don’t repeat yourself ” (DRY) e semplificare la manutenzione, diversi moderni framework per lo sviluppo di applicazioni mobile, detti multipiattaforma, propongono meccanismi che consentono di condividere codice tra piattaforme differenti. L’obiettivo di questa tesi è dunque quello di discutere (capitoli 1, 2 e 3) e mostrare, applicate ad un caso di studio industriale (capitoli 4, 5 e 6), l’uso di tecniche DevOps nell’ambito di applicazioni mobile, ed in particolare mostrando come queste siano applicabili in congiunzione ai framework di sviluppo multipiattaforma (in particolare, Kotlin Multiplatform).

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Obiettivo dello studio condotto è l’implementazione di cicli di operazioni per l’assemblaggio automatizzato di componenti che costituiscono un sistema di trasporto a catena presente in alcune macchine automatiche. L’automazione del processo, fino ad oggi svolto manualmente, prevede l’utilizzo di un robot e, per il controllo di quest’ultimo, di un sistema di visione artificiale. L’attività di tirocinio associata alla tesi di laurea, che ha incluso una parte sperimentale oltre alla scrittura degli algoritmi di controllo del robot, è stata svolta all’interno del laboratorio TAILOR (Technology and Automation for Industry LabORatory) presso Siropack Italia S.r.l dove è presente una cella dotata di robot antropomorfo (Mitsubishi Electric) e di sistema di visione artificiale con camere 2D (Omron). La presenza di quest’ultimo è risultata strategica in termini di possibilità di adattare il montaggio anche a diversi posizionamenti degli oggetti all’interno dello spazio di lavoro, fermo restando che gli stessi risultassero appoggiati su una superficie piana. In primo luogo, affinché fosse garantita la ripetibilità del processo, sono state testate le prestazioni del sistema di visione tramite opportuna calibrazione della camera e del sistema di illuminazione ad esso collegata, al fine di ottenere un’acquisizione delle immagini che fosse sufficientemente robusta e risoluta mediante lo sfruttamento del software di elaborazione Omron FH Vision System. Un’opportuna programmazione della traiettoria del robot in ambiente di simulazione RT Toolbox 3, software integrato nel sistema di controllo del robot Mitsubishi Electric, ha infine consentito le regolari operazioni di assemblaggio, garantendo un processo affidabile ed, allo stesso tempo, adattabile ad ambienti eventualmente non strutturati in cui esso si trova ad operare.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

L’elaborato affronta l’ottimizzazione di una pressa a doppia ginocchiera a 5 punti impiegata nello stampaggio a iniezione. Il processo di ottimizzazione coinvolge la sintesi dimensionale dei membri del meccanismo e la pianificazione della traiettoria del suo organo cedente. L’obiettivo finale è di ottenere una geometria del meccanismo ed una legge oraria che minimizzino il picco di coppia richiesto all’attuatore, oltre a rispettare i vincoli fisici dell’applicazione (ingombri, velocità massima, forza massima, ecc.). La soluzione ottima viene raggiunta applicando in serie l’algoritmo genetico e l’algoritmo SQP (programmazione quadratica sequenziale) ad un modello dinamico rigido del meccanismo. I due algoritmi vengono scelti in quanto efficaci nel risolvere un problema di ottimizzazione vincolato. Per quanto riguarda la loro applicazione in serie, l’algoritmo genetico permette l’esplorazione dello spazio di progettazione e l’individuazione di una soluzione "buona", a partire da questa l’algoritmo SQP trova l’ottimo locale. L’intero processo di modellazione ed ottimizzazione è implementato tramite il software MATLAB. I risultati sono validati con un software di analisi dinamica (SolidWorks Motion) ed in parte in maniera sperimentale. Infine, la soluzione attuale viene confrontata con quelle ottenute. Il confronto è descritto nel dettaglio nella Sezione 6.5 ed in forma riassuntiva nella Sezione 6.5.5.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Lo scopo del progetto di IMA Automation, segmento di IMA S.p.A., è progettare un sistema di automazione da collocare nei magazzini e nell’intera catena logistica, con il fine di aumentare la produttività sia all’interno dei propri magazzini che rappresentare una valida soluzione per i clienti, automatizzando la supply chain. Il lavoro di tesi è stato strutturato in una fase preliminare di ricerca e di studio sullo stato dell’arte, atto ad approfondire le peculiarità delle soluzioni attualmente in commercio, seguita da una intensa attività di progettazione. Nello specifico, l’iter progettuale ha preso in considerazione vari aspetti, a partire dai requisiti di progetto e lo studio dell’identificazione della tipologia di batteria, fino al dimensionamento elettrico dei moduli componenti l’hardware della macchina, programmazione della sensoristica e la progettazione del telaio.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

L’elaborato di tesi è frutto di un percorso di tirocinio svolto in Gruppo Montenegro S.r.l., il cui obiettivo risiede nello sviluppo di un algoritmo per la pallettizzazione e la saturazione del mezzo di trasporto per la Divisione Food. Nello specifico viene proposto un algoritmo euristico elaborato nel linguaggio di programmazione Python. La divisione Food è costituita da tre categorie: Cannamela, Cuore e Vitalia.Queste comprendono prodotti molto eterogenei. Attraverso il coinvolgimento delle funzioni aziendali di Packaging e Qualità, sono stati stabiliti i vincoli da rispettare per la pallettizzazione dei prodotti. L’algoritmo proposto viene descritto suddividendo il processo in tre macro-step. La prima parte affronta il problema del 3D Bin Packing Problem, utilizzando e modificando un programma già presente in letteratura per soddisfare le esigenze della categoria Cannamela. Quest’ultima a differenza delle altre categorie, viene allestita in groupage preallestito poiché gli ordini Cannamela possono contenere quantità non-multiple rispetto alle quantità contenute nell’imballo secondario. La seconda parte dell’algoritmo si occupa della creazione dei pallet per le categorie Cuore e Vitalia. Attraverso l’utilizzo dell’algoritmo di clustering K-means sono state create famiglie di codici che permettessero l’allestimento di pallet con prodotti considerati simili. Di conseguenza, l’algoritmo per la pallettizzazione delle due categorie viene sviluppato ex-novo basandosi sulla percentuale di occupazione del prodotto nel pallet. L’ultima parte dell’algoritmo studia la possibilità di sovrapporre i pallet precedentemente creati. Infine, viene effettuata un’analisi di un periodo strategico confrontando i risultatidell’algoritmo Python con quelli dell’algoritmo presente nel gestionale aziendale. I risultati vengono poi analizzati in relazione a due impatti importanti per l’azienda:economici e ambientali.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Nell’attuale contesto energetico di forte instabilità, prezzi e produttività subiscono continue variazioni a causa di fattori politici ed economici. Il sistema elettrico è chiamato a rispondere velocemente ai cambiamenti garantendo continuamente il soddisfacimento del fabbisogno di energia elettrica. Nel presente elaborato viene utilizzato un modello di costo dinamico, estratto dalla letteratura scientifica, con lo scopo di gestire efficientemente i flussi energetici e garantire una programmazione ottimale del mix produttivo. Viene analizzato lo scenario italiano mettendo in relazione produzione, trasmissione e domanda energetica. I dati utilizzati fanno riferimento, quanto più possibile, al contesto attuale. Coerentemente con la situazione reale i risultati ottenuti mettono in risalto le criticità e i punti di forza principali del sistema elettrico italiano delineando i possibili cambiamenti attuabili a medio termine.