Portfolio item number 1
Published:
Short description of portfolio item number 1
Published:
Short description of portfolio item number 1
Published:
Short description of portfolio item number 2
Published in VEE 2017, Xian, China, 2017
Recommended citation: Juan Fumero, Michel Steuwer, Lukas Stadler, and Christophe Dubach. 2017. Just-In-Time GPU Compilation for Interpreted Languages with Partial Evaluation. SIGPLAN Not. 52, 7 (April 2017), 60-73. DOI: https://doi.org/10.1145/3140607.3050761 https://dl.acm.org/citation.cfm?id=3050761
Published in The University of Edinburgh, UK, 2017
Recommended citation: Juan Fumero. PhD Thesis: Accelerating Interpreted Programming Languages on GPUs with Just-In-Time and Runtime Optimisations. The University of Edinburgh, UK. August 2017. https://www.era.lib.ed.ac.uk/handle/1842/28718
Published in MoreVMs 2018, 2018
Heterogeneous VMs, JVM, Graal, GPUs
Recommended citation: James Clarkson, Juan Fumero, Michalis Papadimitriou, Maria Xekalaki, Christos Kotselidis. Towards Practical Heterogeneous Virtual Machines. MoreVMs 2018 https://2018.programming-conference.org/track/MoreVMs-2018#program
Published in RISC-V Barcelona 2018, 2018
RISC-V, JVMs, MaxineVM
Recommended citation: Foivos S Zakkak, Juan Fumero and Christos Kotselidis. Enabling RISC-V support on the MaxineVM. RISC-V Workshop, Barcelona 2018 https://www.researchgate.net/publication/325113454_Enabling_RISC-V_support_on_MaxineVM
Published in ManLang 2018, Linz, Austria, 2018
Recommended citation: James Clarkson, Juan Fumero, Michalis Papadimitriou, Foivos S. Zakkak, Maria Xekalaki, Christos Kotselidis, Mikel Lujan (The University of Manchester) Exploiting High-Performance Heterogeneous Hardware for Java Programs using Graal. ManLang 2018. https://www.researchgate.net/publication/327097904_Exploiting_High-Performance_Heterogeneous_Hardware_for_Java_Programs_using_Graal
Published in SOCC 2018, California, 2018
Recommended citation: Andreas Kunft, Lukas Stadler, Daniele Bonetta, Cosmin Basca, Jens Meiners, Sebastian Breß, Tilmann Rabl, Juan Fumero, Volker Markl. ScootR: Scaling R Dataframes on Dataflow Systems. SOCC 2018 http://www.user.tu-berlin.de/akunft/paper/socc18-paper35.pdf
Published in Boston, Massachusetts, United States, 2018
Recommended citation: Juan Fumero, Christos Kotselidis. Using Compiler Snippets to Exploit Parallelism on Heterogeneous Hardware: A Java Reduction Case Study. VMIL 2018 https://bit.ly/2Rh5t5c
Published in VEE 2019, Providence, Rhode Island, United States, 2019
Recommended citation: Juan Fumero, Michail Papadimitriou, Foivos S. Zakkak, Maria Xekalaki, James Clarkson, and Christos Kotselidis. 2019. Dynamic application reconfiguration on heterogeneous hardware. In Proceedings of the 15th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments (VEE 2019). ACM, New York, NY, USA, 165-178. DOI: https://doi.org/10.1145/3313808.3313819 https://github.com/jjfumero/jjfumero.github.io/blob/master/files/VEE2019_Fumero_Preprint.pdf
Published in 2019 IEEE 27th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM), 2019
Recommended citation: M. Papadimitriou, J. Fumero, A. Stratikopoulos and C. Kotselidis. Towards Prototyping and Acceleration of Java Programs onto Intel FPGAs. In 2019 IEEE 27th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM), San Diego, CA, USA, 2019 pp. 310-310. doi: 10.1109/FCCM.2019.00051 url: https://doi.ieeecomputersociety.org/10.1109/FCCM.2019.00051
Published in MoreVMs 2020, Workshop collocated with Programming 2020. Porto, Portugal, 2020
Recommended citation: J. Fumero, A. Stratikopoulos and C. Kotselidis. Running Parallel Bytecode Interpreters on Heterogeneous Hardware. MoreVMs 2020.
Published in The Art, Science, and Engineering of Programming (Programming) 2021, 2021
Recommended citation: Michail Papadimitriou, Juan Fumero, Athanasios Stratikopoulos, Foivos Zakkak and Christos Kotselidis. Transparent Compiler and Runtime Specializations for Accelerating Managed Languages on FPGAs. Programming 2021.
Published in VEE 2021, Virtual Execution Environments, 2021
Recommended citation: Michail Papadimitriou, Juan Fumero, Athanasios Stratikopoulos and Christos Kotselidis. Automatically Exploiting the Memory Hierarchy of GPUs through Just-in-Time Compilation . VEE 2021.
Published in VEE 2021, Virtual Execution Environments, 2021
Recommended citation: Michail Papadimitriou, Eleni Markou, Juan Fumero, Athanasios Stratikopoulos, Florin Blanaru and Christos Kotselidis. Multiple-Tasks on Multiple-Devices (MTMD): Exploiting Concurrency in Heterogeneous Managed Runtimes . VEE 2021.
Published in VEE 2022, Virtual Execution Environments, 2022
Recommended citation: Florin Blanaru, Athanasios Stratikopoulos, Juan Fumero, Christos Kotselidis. VEE 2022.
Published in VLDB 2023, 49th International Conference on Very Large Data Bases, 2022
Recommended citation: Maria Xekalaki, Juan Fumero, Athanasios Stratikopoulos, Katerina Doka, Christos, Katsakioris, Constantinos Bitsakos, Nectarios Koziris, Christos Kotselidis. VLDB23
Published in MoreVMs 2023 - Collocated with Programming, 2023
Recommended citation: Athanasios Stratikopoulos, Florin Blanaru, Juan Fumero, Maria Xekalaki, Orion Papadakis, Christos Kotselidis. MoreVMs 2023
Published in Preprint, 2023
Recommended citation: Fumero, J., Rethy, G., Stratikopoulos, A., Foutris, N., & Kotselidis, C. (2023). Experiences in Building a Composable and Functional API for Runtime SPIR-V Code Generation. ArXiv. /abs/2305.09493
Published in MPLR 2023, 2023
Recommended citation: Juan Fumero, Florin Blanaru, Athanasios Stratikopoulos, Steve Dohrmann, Sandhya Viswanathan, Christos Kotselidis. Unified Shared Memory: Friend or Foe? Understanding the Implications of Unified Memory on Managed Heaps. MPLR 2023.
Published in VMIL 2023, 2023
Recommended citation: Fumero, J., Rethy, G., Stratikopoulos, A., Foutris, N., & Kotselidis, C. Beehive SPIR-V Toolkit: A Composable and Functional API for Runtime SPIR-V Code Generation. (VMIL 2023).
Published in SpringerBriefs in Computer Science, 2024
SpringerBriefs in Computer Science
Recommended citation: Juan Fumero, Athanasios Stratikopoulos, Christos Kotselidis. Programming Heterogeneous Hardware via Managed Runtime Systems. SpringerBriefs in Computer Science 2024. https://link.springer.com/book/10.1007/978-3-031-49559-5
Published:
During the past few years R has become an important language for data analysis, data representation and visualization. R is a very expressive language which combines functional and dynamic aspects, with laziness and object oriented programming. However, the default Rimplementation is neither fast nor distributed, both features crucial for “big data” processing.
Published:
During the past few years R has become an important language for data analysis, data representation and visualization. R is a very expressive language which combines functional and dynamic aspects, with laziness and object oriented programming. However, the default Rimplementation is neither fast nor distributed, both features crucial for “big data” processing.
Published:
In this talk we present a technique to automatically offload parts of the input program written in a dynamic language into OpenCL without any changes in the original source code. Our preliminary results show we achieve speedups of up to 150x when using the GPU (3) OpenCL JIT Compilation for Dynamic Programming Languages.
Published:
Heterogeneous computing emerged as a means to achieve higher performance and energy efficiency. However, this trend has been accompanied by changes in software development norms that do not necessarily favour programmers. A prime example is the two most popular heterogeneous programming languages, CUDA and OpenCL, which expose several low-level features to the API making them difficult to use by non-expert users.
Published:
The proliferation of heterogeneous hardware in recent years means that every system we program is likely to include a mix of computing elements; each of these with different characteristics. This trend has been accompanied by changes in software development norms that do not necessarily favor programmers. A prime example is the two most popular heterogeneous programming languages, CUDA and OpenCL, which expose several low-level features to the API making them difficult to use by non-expert users.
Published:
The proliferation of heterogeneous hardware in recent years means that every system we program is likely to include a mix of computing elements; each of these with different characteristics. This trend has been accompanied by changes in software development norms that do not necessarily favor programmers. A prime example is the two most popular heterogeneous programming languages, CUDA and OpenCL, which expose several low-level features to the API making them difficult to use by non-expert users.
Published:
Talk about TornadoVM given at the JVMLS 2019 workshop.
Published:
Talk about TornadoVM given at Joker<?> 2019 Conference.
Published:
Slides available here
Published:
Slides available here
Published:
Tutoring, The University of Edinburgh, 2015
I was tutoring the Introduction to Object Obriented Programming through Java to groups of 8-10 of undergraduate students during Spring 2015 and 2016. We covered an introduction to topics such as Object Oriented Programming, inheritance, Java collections, Threads, concurrency and parallelism. We also covered some material about how the Java Virtual Machine works.