1,356,145 research outputs found

    Erratum: Mumford representation and Riemann-Roch space of a divisor on a hyperelliptic curve

    No full text
    The last part of Corollary 3 and its proof in Falcone and Filippone (2024) are corrected

    Applying the possibilistic C-means algorithm in kernel-induced spaces

    Get PDF
    In this paper, we study a kernel extension of the classic possibilistic c-means. In the proposed extension, we implicitly map input patterns into a possibly high-dimensional space by means of positive semidefinite kernels. In this new space, we model the mapped data by means of the possibilistic clustering algorithm. We study in more detail the special case where we model the mapped data using a single cluster only, since it turns out to have many interesting properties. The modeled memberships in kernel-induced spaces yield a modeling of generic shapes in the input space. We analyze in detail the connections to one-class support vector machines and kernel density estimation, thus, suggesting that the proposed algorithm can be used in many scenarios of unsupervised learning. In the experimental part, we analyze the stability and the accuracy of the proposed algorithm on some synthetic and real datasets. The results show high stability and good performances in terms of accuracy

    5th International Workshop on Automated and verifiable Software sYstem DEvelopment (ASYDE 2023) at 38th IEEE/ACM International Conference on Automated Software Engineering (ASE 2023)

    No full text
    During the last three decades, automation in software development has gone mainstream. Software development teams strive to automate as much of the software development activ-ities as possible, spanning requirements specification, system modeling, code generation, testing, deployment, verification, as well as release phases, project status reporting and system maintenance. Automation helps to reduce development time and cost, as well as to concentrate know ledge by bringing quality into every step of the development process

    Preparazione e caratterizzazione di nanocompositi polimerici di rilevanza tecnologica basati su nanoparticelle sintetizzate mediante tecniche assistite da microonde

    No full text
    L'interesse crescente per l'utilizzo delle microonde nell'ingegneria chimica deriva dalla potenzialità che esse offrono per l'incremento dell'efficienza di reazioni in processi chimici. Gli applicatori con emissione di potenza in continuo sono i più controllabili per uso scientifico, per cui sono utilizzati più frequentemente. Al contrario i campi elettromagnetici pulsati si utilizzano in applicazioni di nicchia. Intento comune della varietà delle metodologie di sintesi di nanomateriali è il raggiungimento di un accurato controllo dell'accrescimento dei grani, della purezza, dell'omogeneità e, in generale, delle proprietà fisiche. In quest'ottica, l'uso delle microonde per la sintesi di nanopolveri è in costante aumento, favorendo particelle di dimensioni minori, con distribuzione granulometrica più stretta e nuove microstrutture e superfici funzionalizzate. Le microonde risultano fondamentali per risolvere i principali limiti dei nanotubi di carbonio, la cui tendenza all'aggregazione ne scoraggia l'uso, ad esempio, come filler per nanocompositi polimerici. La necessità di elevata qualità dei nanomateriali costituisce allo stesso tempo il loro valore aggiunto e il loro punto di debolezza, poiché nella produzione industriale sono richiesti alti livelli di accuratezza delle strumentazioni e un perfetto controllo dei parametri di processo. Critico è il passaggio da una scala di laboratorio a scala industriale, causa la mancanza di strumenti appropriati. I reattori commerciali sono principalmente basati su configurazioni mutuate da forni domestici; essi usano generatori di bassa-media qualità, senza localizzazione del campo elettromagnetico in cavità, e senza misuratori accurati di temperatura e pressione. Pertanto risultano difficili da adattare a particolari condizioni sperimentali. La massima potenza erogabile è determinata dalla capacità dei generatori disponibili sul mercato, stante la difficoltà di utilizzare più generatori contemporaneamente in uno stesso reattore. Il controllo dell'ambiente di reazione è più difficile in quanto il campo elettromagnetico è influenzato dalla presenza di sonde per la misura di temperatura e di pressione e le proprietà del carico cambiano al progredire della reazione, modificando continuamente la distribuzione del campo. La loro versatilità è spesso controbilanciata da una bassa efficienza, soprattutto cosa sgradita se si sta pensando a sviluppare operazioni “one pot”. Quanto sopra individua una necessità delle aree industriali e accademiche della chimica e dell'ingegneria: un reattore a microonde con accurato controllo dei parametri di reazione e di appropriate dimensioni, che coniughi la crescente domanda di intensificazione di processo in un contesto di green chemistry

    Heterogeneous sparse matrix computations on hybrid GPU/CPU platforms

    No full text
    Hybrid GPU/CPU clusters are becoming very popular in the scientific computing community, as attested by the number of such systems present in the Top 500 list. In this paper, we address one of the key algorithms for scientific applications: the computation of sparse matrix-vector products that lies at the heart of iterative solvers for sparse linear systems. We detail how design patterns for sparse matrix computations enable us to easily adapt to such a heterogeneous GPU/CPU platform using several sparse matrix formats in order to achieve best performance; then, we analyze static load balancing strategies for devising a suitable data decomposition and propose our approach. We discuss our experience in using different sparse matrix formats and data partitioning algorithms with a number of computational experiments executed on three different hybrid GPU/CPU platforms

    A framework for unit testing with coarray Fortran

    Get PDF
    Parallelism is a ubiquitous feature of modern computing architectures; indeed, we might even say that serial code is now automatically legacy code. Writing parallel code poses significant challenges to programs, and is often error-prone. Partitioned Global Address Space (PGAS) languages, such as Coarray Fortran (CAF), represent a promising development direction in the quest for a trade-off between simplicity and performance. CAF is a parallel programming model that allows a smooth migration from serial to parallel code. However, despite CAF simplicity, refactoring serial code and migrating it to parallel versions is still error-prone, especially in complex softwares. The combination of unit testing, which drastically reduces defect injection, and CAF is therefore a very appealing prospect; however, it requires appropriate tools to realize its potential. In this paper, we present the first CAF-compatible framework for unit tests, developed as an extension to the Parallel Fortran Unit Test framework (pFUnit)

    Overlapping Communication with Computation in MPI Applications

    Get PDF
    In High Performance Computing (HPC), minimizing communication overhead is one of the most important goals in order to get high performance. This is more than ever important on exascale platforms, where there will be a much higher degree of parallelism compared to petascale platforms, resulting in increased communication overhead with considerable impact on application execution time and energy expenses. A good strategy for containing this overhead is to hide communication costs by overlapping them with computation. Despite the increasing interest in achieving computation/communication overlapping, details about the reasons that prevent it from succeeding are not easy to find, leading to confusion and poor application optimization. The Message Passing Interface (MPI) library, a de-facto standard in the HPC world, has always provided non-blocking communication routines able, in theory, to achieve communication/computation overlapping. Unfortunately, several factors related with the MPI independent progress and offload capability of the underlying network, make this overlap hard do achieve. With the introduction of one-sided communication routines, providing high quality MPI implementations, able to progress communication independently, is becoming as important as providing low latency and high bandwidth communication. In this paper, we gather the most significant contributions about computation/communication overlapping and provide technical explanation of how such overlap can be achieved on modern supercomputers

    Coarray-based Load Balancing on Heterogeneous and Many-Core Architectures

    Get PDF
    In order to reach challenging performance goals, computer architecture is expected to change significantly in the near future. Heterogeneous chips, equipped with different types of cores and memory, will force application developers to deal with irregular communication patterns, high levels of parallelism, and unexpected behavior. Load balancing among the heterogeneous compute units will be a critical task in order to achieve an effective usage of the computational power provided by such new architectures. In this highly dynamic scenario, Partitioned Global Address Space (PGAS) languages, like Coarray Fortran, appear a promising alternative to standard MPI programming that uses two-sided communications, in particular because of PGAS one-sided semantic and ease of programmability. In this paper, we show how Coarray Fortran can be used for implementing dynamic load balancing algorithms on an exascale compute node and how these algorithms can produce performance benefits for an Asian option pricing problem, running in symmetric mode on Intel Xeon Phi Knights Corner and Knights Landing architectures

    Sparse matrix computations on clusters with GPGPUs

    No full text
    Hybrid nodes containing GPUs are rapidly becoming the norm in parallel machines. We have conducted some experiments regarding how to plug GPU-enabled computational kernels into PSBLAS, a MPI-based library specifically geared towards sparse matrix computations. In this paper, we present our findings on which strategies are more promising in the quest for the optimal compromise among raw performance, speedup, software maintainability, and extensibility. We consider several solutions to implement the data exchange with the GPU focusing on the data access and transfer, and present an experimental evaluation for a cluster system with up to two GPUs per node. In particular, we compare the pinned memory and the Open-MPI approaches, which are the two most used alternatives for multi-GPU communication in a cluster environment. We find that OpenMPI turns out to be the best solution for large data transfers, while the pinned memory approach is still a good solution for small transfers between GPUs
    corecore