199 resultados para GPGPU, CUDA, OpenCL, Programmazione Parallela
Resumo:
l’analiticità del metodo adottato ha permesso di ottenere una precisa e puntuale conoscenza del processo costruttivo, ottimo esempio per poter analizzare e confrontare i due programmi, Ms-Project 2007 e Primavera Project Planner P6.0, oggetto della presente trattazione; per comprendere quale software aiuta il Project Manager a gestire le complessità di un progetto per soddisfare i bisogni dei clienti, ad avere un controllo più stretto sulle strutture di progetto e sui suoi requisiti di rendicontazione, nonché la comprensione di tutto ciò che può ostacolare il corretto avanzamento del programma. Quale programma aiuta le aziende a pianificare e gestire sia i singoli progetti sia il programma complessivo, a implementare e monitorare i livelli di performance necessari e valutare agevolmente l’impatto delle modifiche di programma sui piani di lavoro, sui budget, sull’utilizzazione delle risorse. Un’efficace visione d’insieme dell’intero programma, combinata con la continua verifica delle metriche di produttività, consente ai program manager di mitigare proattivamente i rischi e ottenere come risultato il puntuale rispetto dei tempi e del budget.
Resumo:
La tesi è l'esito di un lavoro di studio e ricerca nell'ambito della gestione delle sale operatorie, uno dei problemi principali su cui si sono focalizzati gli studi di Ricerca Operativa, applicati ai sistemi sanitari, sviluppati nell'ultimo decennio. Vengono presentati i due modelli di ottimizzazione creati al fine di migliorare l'efficienza organizzativa delle pianificazioni degli interventi chirurgici di un presidio ospedaliero. I due modelli, uno teorico e l'altro implementato con istanze reali, si distinguono dalle ricerche presenti in letteratura per l'innovativa proposta di pianificare attività preoperatorie che contribuiscano a raggiungere una miglior efficienza e la diminuzione dei costi delle pratiche chirurgiche.
Resumo:
La tesi si propone, dopo una panoramica generale sullo stato dell'arte in termini di software e concorrenza, l'obiettivo di studiare il modello ad attori ed analizzarne alcune significative implementazioni. Scelta quindi una specifica implementazione come caso di studio, in particolare il linguaggio AXUM in ambiente .NET, si entrerà nel dettaglio di tale linguaggio, analizzandone tutti gli aspetti e valutandone le potenzialità. Infine, sarà affrontata una breve ma significativa analisi critica sul linguaggio scelto.
Resumo:
Il Web ha subito numerose trasformazioni rispetto al passato. Si è passati da un Web statico, in cui l'unica possibilità era quella di leggere i contenuti della pagina, ad un Web dinamico e interattivo come quello dei social network. Il Web moderno è, ancora oggi, un universo in espansione. La possibilità di arricchire le pagine con contenuti interattivi, video, foto e molto altro, rende l'esperienza web sempre più coinvolgente. Inoltre la diffusione sempre più ampia di mobile device ha reso necessaria l'introduzione di nuovi strumenti per sfruttare al meglio le funzionalità di tali dispositivi. Esistono al momento tantissimi linguaggi di scripting e di programmazione, ma anche CMS che offrono a chiunque la possibilità di scrivere e amministrare siti web. Nonostante le grandi potenzialità che offrono, spesso queste tecnologie si occupano di ambiti specifici e non permettono di creare sistemi omogenei che comprendano sia client che server. Dart si inserisce proprio in questo contesto. Tale linguaggio dà a i programmatori la possibilità di poter sviluppare sia lato client sia lato server. L'obiettivo principale di questo linguaggio è infatti la risoluzione di alcune problematiche comuni a molti programmatori web. Importante in questo senso è il fatto di rendere strutturata la costruzione di programmi web attraverso l'uso di interfacce e classi. Fornisce inoltre un supporto per l'integrazione di svariate funzionalità che allo stato attuale sono gestite da differenti tecnologie. L'obiettivo della presente tesi è quello di mettere a confronto Dart con alcune delle tecnologie più utilizzate al giorno d'oggi per la programmazione web-based. In particolare si prenderanno in considerazione JavaScript, jQuery, node.js e CoffeeScript.
Resumo:
L'obiettivo di questo lavoro è effettuare un'analisi del modello di programmazione proposto da Android. L'attenzione verrà posta, in particolare, su quali meccanismi vengano forniti per la gestione di eventi asincroni generati dal sistema, allo scopo di notificare cambiamenti del contesto in cui si sta operando: dal modo in cui vengono intercettati, a come risulta possibile modificare il comportamento dell'applicazione, in reazione alle nuove informazioni acquisite. Si valuteranno gli elementi di novità introdotti nelle API di Android, in relazione ai classici mezzi disponibili nella programmazione standard in Java, atti a risolvere una nuova categoria di problematiche dovute alla natura context-aware delle applicazioni. Sarà effettuata anche un'analisi più generale della qualità del modello proposto, in termini di estensibilità e modularità del codice; per fare ciò, si prenderà in esame l'applicazione SMS Backup+ come caso di studio e si proporranno delle possibili estensioni per verificarne la fattibilità.
Resumo:
Attualmente il panorama informatico è dominato dai dispositivi mobile: smartphone e tablet pc dominano incontrastati la scena del mercato elettronico. Questo comporta un radicale ripensamento e cambiamento del software, le web app e le mobile application richiedono infatti una sempre maggiore reattività dell’interfaccia utente, la persistente connessione a Internet e l’interazione con una moltitudine di dispositivi esterni. Il progettista di software deve oggi far fronte a tutta una serie di problematiche, l’aumentata complessità dei sistemi e i sempre più ristretti tempi di sviluppo e consegna richiedono compromessi tra la semplicità delle tecniche di progettazione e l’efficienza del prodotto ottenuto. Le architetture ad eventi in primis, unitamente al paradigma di programmazione asincrona, si pongono come soluzione ottimale a queste esigenze. L’obbiettivo principale di questa tesi è quello di offrire una panoramica generale sullo stato dell’arte delle architetture ad eventi focalizzandosi sul ruolo che esse assumono nel contesto delle applicazioni moderne, intendendo principalmente con questo termine le web application e le mobile application. Partendo dal concetto di programmazione sincrona e parallela si giunge a descrivere un terzo modello, il modello asincrono, di fondamentale importanza per i sistemi event-driven. Utilizzando come principale linguaggio di riferimento JavaScript si affrontano le problematiche legate alla stesura del codice per la gestione degli eventi, l’asincronicità intrinseca degli eventi e l’utilizzo di funzioni di callback portano a produrre codice di difficile lettura e manutenzione. Si analizzano quindi in dettaglio i pattern fondamentali e le tecniche attualmente utilizzate per l’ottimizzazione della gestione del codice e delle problematiche esposte fornendo numerosi esempi esplicativi.
Resumo:
L’obiettivo della tesi è esplorare gli aspetti fondamentali che riguardano la programmazione asincrona, in particolare in JavaScript, analizzando le librerie e i metodi piu` diffusi per risolvere problemi tipici di asincronicità. Il motivo dello studio di JavaScript è il grande utilizzo di tale linguaggio per la costruzione delle moderne web-app. Per la realizzazione di questo elaborato si è partiti dallo studio dell’evoluzione del web, dal Web 1.0 al web 2.0 e dall’evoluzione delle web app in questo contesto, successivamente si è raffinata la ricerca allo studio più specifico di JavaScript e, di conseguenza, ai suoi costrutti ed ai suoi stili di programmazione, come la programmazione asincrona e la programmazione ad eventi.
Resumo:
Nella tesi si descrive un metodo di ottimizzazione per una strategia di copertura di un derivato replicabile in un modello di mercato completo nel caso in cui il valore iniziale della stessa fosse inferiore al valore iniziale del prezzo di arbitraggio del derivato considerato.
Resumo:
The aim of my thesis is to parallelize the Weighting Histogram Analysis Method (WHAM), which is a popular algorithm used to calculate the Free Energy of a molucular system in Molecular Dynamics simulations. WHAM works in post processing in cooperation with another algorithm called Umbrella Sampling. Umbrella Sampling has the purpose to add a biasing in the potential energy of the system in order to force the system to sample a specific region in the configurational space. Several N independent simulations are performed in order to sample all the region of interest. Subsequently, the WHAM algorithm is used to estimate the original system energy starting from the N atomic trajectories. The parallelization of WHAM has been performed through CUDA, a language that allows to work in GPUs of NVIDIA graphic cards, which have a parallel achitecture. The parallel implementation may sensibly speed up the WHAM execution compared to previous serial CPU imlementations. However, the WHAM CPU code presents some temporal criticalities to very high numbers of interactions. The algorithm has been written in C++ and executed in UNIX systems provided with NVIDIA graphic cards. The results were satisfying obtaining an increase of performances when the model was executed on graphics cards with compute capability greater. Nonetheless, the GPUs used to test the algorithm is quite old and not designated for scientific calculations. It is likely that a further performance increase will be obtained if the algorithm would be executed in clusters of GPU at high level of computational efficiency. The thesis is organized in the following way: I will first describe the mathematical formulation of Umbrella Sampling and WHAM algorithm with their apllications in the study of ionic channels and in Molecular Docking (Chapter 1); then, I will present the CUDA architectures used to implement the model (Chapter 2); and finally, the results obtained on model systems will be presented (Chapter 3).
Resumo:
In accordo con la filosofia della Software Defined Radio è stato progettato un decoder LDPC software che utilizza una GPU per ottenere prestazioni migliori. Il lavoro, che comprende anche l'encoder e un simulatore di canale AWGN, può essere utilizzato sia per eseguire simulazioni che per elaborare dati in real time. Come caso di studio si sono considerati i codici LDPC dello standard DVB-S2.
Resumo:
Il web ha cambiato radicalmente le nostre vite. Grazie ad esso, oggi si possono fare cose che solo qualche decennio fa erano pura fantascienza, come ad esempio la telepresenza o gli interventi chirurgici da remoto, ma anche cose più “semplici” come seguire corsi di formazione (anche universitaria), effettuare la spesa, operare con il proprio conto corrente, tutto restando comodamente a casa propria, semplificando così la vita di tutti. Allo stesso tempo il web è stato utilizzato per fini tutt’altro che nobili, ad esempio per commettere crimini informatici, recare danni alla concorrenza, compiere varie forme di truffe ecc. Ogni persona dovrebbe comportarsi in modo corretto e nel pieno rispetto del prossimo, sia sul mondo reale che sul web, ma purtroppo non è sempre così. Per quanto riguarda il mondo del web, sta agli sviluppatori soddisfare le necessità dei propri utenti, assicurandosi però che la propria applicazione non verrà usata per recare qualche tipo di danno a terzi o alla propria infrastruttura. Questa tesi nasce da un idea dei docenti del corso di Programmazione riguardo alla realizzazione di un modulo del sito web del corso che si occupa della correzione automatica di esercizi scritti in linguaggio C dagli studenti del corso, dove per correzione automatica si intende la verifica della correttezza degli esercizi.