Javier Verdú
Current Organizations / Institutes
The organizations/institutes from the scholar's latest article
Research Subjects
Javier Verdú has a total of 18 co-authors. Here are the top co-authors by number of shared publications:
- Alex Pajuelo
Universitat Politecnica de Catalunya, Barcelona, Spain
4 shared publications - Beatriz Otero
Universitat Politecnica de Catalunya, Barcelona, Spain
2 shared publications - Juan José Costa
Universitat Politecnica de Catalunya
2 shared publications Mario Nemirovsky
Institucio Catalana de Recerca i Estudis Avancats, Barcelona Supercomputing Center (BSC), Barcelona, Spain
2 shared publications- Mateo Valero
Barcelona Supercomputing Center, Barcelona, Spain
2 shared publications - Ramon Canal
Universitat Politècnica de Catalunya, Manresa, Spain
2 shared publications
Latest Publications
- Open Access
- 27 October 2026
- Published by Springer Nature in Neural Computing and Applications
- Vol. 38 (20) , 854
Lightweight detection and classification of RISC-V hardware exploits using machine learning techniques
This work proposes a hardware-assisted malware detection framework leveraging the HARPY-V-GEM5 dataset for RISC-V architectures. Using the GEM5 full-system simulator, we collect microarchitectural telemetry, specifically Hardware Performance Counters (HPC) and committed instruction mnemonics–from a balanced corpus of 32 benign and malicious applications. Unlike previous approaches relying on complex deep learning models or synthetic data augmentation, we employ a rigorous undersampling strategy to create a balanced dataset of 12,890 execution samples per program, collected at a fine-grained interval of 10,000 instructions. We evaluate supervised learning algorithms, demonstrating that Random Forest (RF) and Decision Tree (DT) classifiers achieve superior efficacy compared to Support Vector Machines (SVM) and Naive Bayes. The results show detection accuracies above 99.5% when using HPC features and 99.0% when using instruction-level features. We further evaluate zero-day resilience, showing that generalization to unseen programs is strongly attack-dependent: while some families remain reliably detectable, others exhibit very low detection rates. These findings indicate that the proposed lightweight models provide partial and selective zero-day robustness, rather than uniform generalization across all attack types.
- 27 October 2026
- Published by Springer Nature in Neural Computing and Applications
- Vol. 38 (20) , 854
Open AccessLightweight detection and classification of RISC-V hardware exploits using machine learning techniques
This work proposes a hardware-assisted malware detection framework leveraging the HARPY-V-GEM5 dataset for RISC-V architectures. Using the GEM5 full-system simulator, we collect microarchitectural telemetry, specifically Hardware Performance Counters (HPC) and committed instruction mnemonics–from a balanced corpus of 32 benign and malicious applications. Unlike previous approaches relying on complex deep learning models or synthetic data augmentation, we employ a rigorous undersampling strategy to create a balanced dataset of 12,890 execution samples per program, collected at a fine-grained interval of 10,000 instructions. We evaluate supervised learning algorithms, demonstrating that Random Forest (RF) and Decision Tree (DT) classifiers achieve superior efficacy compared to Support Vector Machines (SVM) and Naive Bayes. The results show detection accuracies above 99.5% when using HPC features and 99.0% when using instruction-level features. We further evaluate zero-day resilience, showing that generalization to unseen programs is strongly attack-dependent: while some families remain reliably detectable, others exhibit very low detection rates. These findings indicate that the proposed lightweight models provide partial and selective zero-day robustness, rather than uniform generalization across all attack types.
- Open Access
Transfer-Learning-Based Intrusion Detection Framework in IoT Networks
Cyberattacks in the Internet of Things (IoT) are growing exponentially, especially zero-day attacks mostly driven by security weaknesses on IoT networks. Traditional intrusion detection systems (IDSs) adopted machine learning (ML), especially deep Learning (DL), to improve the detection of cyberattacks. DL-based IDSs require balanced datasets with large amounts of labeled data; however, there is a lack of such large collections in IoT networks. This paper proposes an efficient intrusion detection framework based on transfer learning (TL), knowledge transfer, and model refinement, for the effective detection of zero-day attacks. The framework is tailored to 5G IoT scenarios with unbalanced and scarce labeled datasets. The TL model is based on convolutional neural networks (CNNs). The framework was evaluated to detect a wide range of zero-day attacks. To this end, three specialized datasets were created. Experimental results show that the proposed TL-based framework achieves high accuracy and low false prediction rate (FPR). The proposed solution has better detection rates for the different families of known and zero-day attacks than any previous DL-based IDS. These results demonstrate that TL is effective in the detection of cyberattacks in IoT environments.
Open AccessTransfer-Learning-Based Intrusion Detection Framework in IoT Networks
Cyberattacks in the Internet of Things (IoT) are growing exponentially, especially zero-day attacks mostly driven by security weaknesses on IoT networks. Traditional intrusion detection systems (IDSs) adopted machine learning (ML), especially deep Learning (DL), to improve the detection of cyberattacks. DL-based IDSs require balanced datasets with large amounts of labeled data; however, there is a lack of such large collections in IoT networks. This paper proposes an efficient intrusion detection framework based on transfer learning (TL), knowledge transfer, and model refinement, for the effective detection of zero-day attacks. The framework is tailored to 5G IoT scenarios with unbalanced and scarce labeled datasets. The TL model is based on convolutional neural networks (CNNs). The framework was evaluated to detect a wide range of zero-day attacks. To this end, three specialized datasets were created. Experimental results show that the proposed TL-based framework achieves high accuracy and low false prediction rate (FPR). The proposed solution has better detection rates for the different families of known and zero-day attacks than any previous DL-based IDS. These results demonstrate that TL is effective in the detection of cyberattacks in IoT environments.
- 23 December 2015
- Published by Wiley in Concurrency and Computation: Practice and Experience
- Vol. 28 (13) , 3525-3539
Dynamic web worker pool management for highly parallel javascript web applications
- 23 December 2015
- Published by Wiley in Concurrency and Computation: Practice and Experience
- Vol. 28 (13) , 3525-3539
Dynamic web worker pool management for highly parallel javascript web applications
- 26 October 2015
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Computer Architecture Letters
- Vol. 15 (2) , 105-108
Performance Scalability Analysis of JavaScript Applications with Web Workers
Web applications are getting closer to the performance of native applications taking advantage of new standard-based technologies. The recent HTML5 standard includes, among others, the Web Workers API that allows executing JavaScript applications on multiple threads, or workers. However, the internals of the browser's JavaScript virtual machine does not expose direct relation between workers and running threads in the browser and the utilization of logical cores in the processor. As a result, developers do not know how performance actually scales on different environments and therefore what is the optimal number of workers on parallel JavaScript codes. This paper presents the first performance scalability analysis of parallel web apps with multiple workers. We focus on two case studies representative of different worker execution models. Our analyses show performance scaling on different parallel processor microarchitectures and on three major web browsers in the market. Besides, we study the impact of co-running applications on the web app performance. The results provide insights for future approaches to automatically find out the optimal number of workers that provide the best tradeoff between performance and resource usage to preserve system responsiveness and user experience, especially on environments with unexpected changes on system workload.
- 26 October 2015
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Computer Architecture Letters
- Vol. 15 (2) , 105-108
Performance Scalability Analysis of JavaScript Applications with Web Workers
Web applications are getting closer to the performance of native applications taking advantage of new standard-based technologies. The recent HTML5 standard includes, among others, the Web Workers API that allows executing JavaScript applications on multiple threads, or workers. However, the internals of the browser's JavaScript virtual machine does not expose direct relation between workers and running threads in the browser and the utilization of logical cores in the processor. As a result, developers do not know how performance actually scales on different environments and therefore what is the optimal number of workers on parallel JavaScript codes. This paper presents the first performance scalability analysis of parallel web apps with multiple workers. We focus on two case studies representative of different worker execution models. Our analyses show performance scaling on different parallel processor microarchitectures and on three major web browsers in the market. Besides, we study the impact of co-running applications on the web app performance. The results provide insights for future approaches to automatically find out the optimal number of workers that provide the best tradeoff between performance and resource usage to preserve system responsiveness and user experience, especially on environments with unexpected changes on system workload.
- 27 March 2015
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Computers
- Vol. 65 (1) , 256-269
Thread Assignment in Multicore/Multithreaded Processors: A Statistical Approach
The introduction of multicore/multithreaded processors, comprised of a large number of hardware contexts (virtual CPUs) that share resources at multiple levels, has made process scheduling, in particular assignment of running threads to available hardware contexts, an important aspect of system performance. Nevertheless, thread assignment of applications running on state-of-the art processors is an NP-complete problem. Over the years, numerous studies have proposed heuristic-based algorithms for thread assignment. Since the thread assignment problem is intractable, it is in general impossible to know the performance of the optimal assignment, so the room for improvement of a given algorithm is also unknown. It is therefore hard to decide whether to invest more effort and time to improve an algorithm that may already be close to optimal. In this paper, we present a statistical approach to the thread assignment problem. First, we present a method that predicts the performance of the optimal thread assignment, based on the observed performance of each thread assignment in a random sample. The method is based on Extreme Value Theory (EVT), a branch of statistics that analyses extreme deviations from the population mean. We also propose sample pruning, a method that significantly reduces the time required to apply the statistical method by reducing the number of candidate solutions that need to be measured. Finally, we show that, if no suitable heuristic-based algorithm is available, a sample of several thousand random thread assignments is enough to obtain, with high confidence, an assignment with performance close to optimal. The presented approach is architecture and application independent, and it can be used to address the thread assignment problem in various domains. It is especially well suited for systems in which the workload seldom changes. An example is network systems, which typically provide a constant set of services that are known in advance, with network applications performing a similar processing algorithm for each packet in the system. In this paper, we validate our methods with an industrial case study for a set of multithreaded network applications on an UltraSPARC T2 processor. This article is an extension of our previous work [44], which was published in Proceedings of 17th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-2012).
- 27 March 2015
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Computers
- Vol. 65 (1) , 256-269
Thread Assignment in Multicore/Multithreaded Processors: A Statistical Approach
The introduction of multicore/multithreaded processors, comprised of a large number of hardware contexts (virtual CPUs) that share resources at multiple levels, has made process scheduling, in particular assignment of running threads to available hardware contexts, an important aspect of system performance. Nevertheless, thread assignment of applications running on state-of-the art processors is an NP-complete problem. Over the years, numerous studies have proposed heuristic-based algorithms for thread assignment. Since the thread assignment problem is intractable, it is in general impossible to know the performance of the optimal assignment, so the room for improvement of a given algorithm is also unknown. It is therefore hard to decide whether to invest more effort and time to improve an algorithm that may already be close to optimal. In this paper, we present a statistical approach to the thread assignment problem. First, we present a method that predicts the performance of the optimal thread assignment, based on the observed performance of each thread assignment in a random sample. The method is based on Extreme Value Theory (EVT), a branch of statistics that analyses extreme deviations from the population mean. We also propose sample pruning, a method that significantly reduces the time required to apply the statistical method by reducing the number of candidate solutions that need to be measured. Finally, we show that, if no suitable heuristic-based algorithm is available, a sample of several thousand random thread assignments is enough to obtain, with high confidence, an assignment with performance close to optimal. The presented approach is architecture and application independent, and it can be used to address the thread assignment problem in various domains. It is especially well suited for systems in which the workload seldom changes. An example is network systems, which typically provide a constant set of services that are known in advance, with network applications performing a similar processing algorithm for each packet in the system. In this paper, we validate our methods with an industrial case study for a set of multithreaded network applications on an UltraSPARC T2 processor. This article is an extension of our previous work [44], which was published in Proceedings of 17th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-2012).
- Open Access
- 9 January 2010
- Published by Association for Computing Machinery (ACM)
- Vol. 45 (5) , 191-202
Thread to strand binding of parallel network applications in massive multi-threaded systems
In processors with several levels of hardware resource sharing, like CMPs in which each core is an SMT, the scheduling process becomes more complex than in processors with a single level of resource sharing, such as pure-SMT or pure-CMP processors. Once the operating system selects the set of applications to simultaneously schedule on the processor (workload), each application/thread must be assigned to one of the hardware contexts (strands). We call this last scheduling step the Thread to Strand Binding or TSB. In this paper, we show that the TSB impact on the performance of processors with several levels of shared resources is high. We measure a variation of up to 59% between different TSBs of real multithreaded network applications running on the UltraSPARC T2 processor which has three levels of resource sharing. In our view, this problem is going to be more acute in future multithreaded architectures comprising more cores, more contexts per core, and more levels of resource sharing. We propose a resource-sharing aware TSB algorithm (TSBSched) that significantly facilitates the problem of thread to strand binding for software-pipelined applications, representative of multithreaded network applications. Our systematic approach encapsulates both, the characteristics of multithreaded processors under the study and the structure of the software pipelined applications. Once calibrated for a given processor architecture, our proposal does not require hardware knowledge on the side of the programmer, nor extensive profiling of the application. We validate our algorithm on the UltraSPARC T2 processor running a set of real multithreaded network applications on which we report improvements of up to 46% compared to the current state-of-the-art dynamic schedulers.Peer ReviewedPostprint (published version
- 9 January 2010
- Published by Association for Computing Machinery (ACM)
- Vol. 45 (5) , 191-202
Open AccessThread to strand binding of parallel network applications in massive multi-threaded systems
In processors with several levels of hardware resource sharing, like CMPs in which each core is an SMT, the scheduling process becomes more complex than in processors with a single level of resource sharing, such as pure-SMT or pure-CMP processors. Once the operating system selects the set of applications to simultaneously schedule on the processor (workload), each application/thread must be assigned to one of the hardware contexts (strands). We call this last scheduling step the Thread to Strand Binding or TSB. In this paper, we show that the TSB impact on the performance of processors with several levels of shared resources is high. We measure a variation of up to 59% between different TSBs of real multithreaded network applications running on the UltraSPARC T2 processor which has three levels of resource sharing. In our view, this problem is going to be more acute in future multithreaded architectures comprising more cores, more contexts per core, and more levels of resource sharing. We propose a resource-sharing aware TSB algorithm (TSBSched) that significantly facilitates the problem of thread to strand binding for software-pipelined applications, representative of multithreaded network applications. Our systematic approach encapsulates both, the characteristics of multithreaded processors under the study and the structure of the software pipelined applications. Once calibrated for a given processor architecture, our proposal does not require hardware knowledge on the side of the programmer, nor extensive profiling of the application. We validate our algorithm on the UltraSPARC T2 processor running a set of real multithreaded network applications on which we report improvements of up to 46% compared to the current state-of-the-art dynamic schedulers.Peer ReviewedPostprint (published version