Andrea Di Biagio

Learn More
Web servers often need to manage encrypted transfers of data. The encryption activity is computationally intensive, and exposes a significant degree of parallelism. At the same time, cheap multicore processors are readily available on graphics hardware, and toolchains for development of general purpose programs are being released by the vendors. In this(More)
The main goals of the 2PARMA project are: the definition of a parallel programming model combining component-based and single-instruction multiple-thread approaches, instruction set virtualisation based on portable byte-code, run-time resource management policies and mechanisms as well as design space exploration methodologies for many-core computing(More)
ILDJIT, a new-generation dynamic compiler and virtual machine designed to support parallel compilation, is here introduced. Our dynamic compiler targets the increasingly popular ECMA-335 specification. The goal of this project is twofold: on one hand, it aims at exploiting the parallelism exposed by multi-core architectures to hide dynamic compilation(More)
We present the design and performance analysis of a GPU-optimized implementation of a disk encryption application employing the XTS mode of operation applied together with the Twofish algorithm within the well-known TrueCrypt suite. We show how to correctly tune the design parameters, including data allocation, thread packing, and parallelization strategy.(More)
Reduction operations play a key role in modern massively data parallel computation. However, current implementations in shared memory programming APIs such as OpenMP are often computation bottlenecks due to the high number of atomic operations involved. We propose a reduction design that exploits the coupling with a barrier synchronization to optimize the(More)
Dynamic configuration of application-specific implicit instructions has been proposed to better exploit the available parallelism at the instruction level in pipelined processors. The support of such implicit instruction issue-requires the pipeline to be extended with a trigger table that describes the instruction implicitly issued as a response to a value(More)
Throughout the years, countless hardware-based and software-level optimizations have been done to improve the performance of cryptographic algorithms. In this poster, we explore the suitability for Graphic Processor Units (GPUs) of optimizations based on the bitslicing software technique. In particular, we explore a novel CUDA implementation of the Advanced(More)
Cryptographic algorithms are crucial to the security of modern computing systems. The peculiar nature of such algorithms leads them to be computationally intensive by design. Speeding up cryptographic algorithms through parallelization can therefore prove effective especially when large amount of data are to be encrypted. At the same time, massive amounts(More)
  • 1