Details
Original language | English |
---|---|
Title of host publication | Middleware 2011 - ACM/IFIP/USENIX 12th International Middleware Conference, Proceedings |
Pages | 431-450 |
Number of pages | 20 |
Volume | 7049 LNCS |
Publication status | Published - 2011 |
Externally published | Yes |
Event | 12th ACM/IFIP/USENIX International Middleware Conference, Middleware 2011 - , Portugal Duration: 12 Dec 2011 → 16 Dec 2011 |
Abstract
Reprogrammable hardware like Field-Programmable Gate Arrays (FPGAs) is becoming increasingly powerful and affordable. Modern FPGA chips can be reprogrammed at runtime and with low latency which makes them attractive to be used as a dynamic resource in systems. For instance, on mobile devices FPGAs can help to accelerate the performance of critical tasks and at the same time increase the energy-efficiency of the device. The integration of FPGA resources into commodity software, however, is a highly involved task. On the one hand, there is an impedance mismatch between the hardware description languages in which FPGAs are programmed and the high-level languages in which many mobile applications are nowadays developed. On the other hand, the FPGA is a limited and shared resource and as such requires explicit resource management. In this paper, we present the Juggle middleware which leverages the ideas of modularity and service-orientation to facilitate a seamless exchange of hardware and software implementations at runtime. Juggle is built around the well-established OSGi standard for software modules in Java and extends it with support for services implemented in reprogrammable hardware, thereby leveraging the same level of management for both worlds. We show that hardware-accelerated services implemented with Juggle can help to increase the performance of applications and reduce power consumption on mobile devices without requiring any changes to existing program code.
Keywords
- FPGA, Hardware Acceleration, OSGi, SDG 7 - Affordable and Clean Energy
Sustainable Development Goals
Cite this
- Standard
- Harvard
- Apa
- Vancouver
- BibTeX
- RIS
Middleware 2011 - ACM/IFIP/USENIX 12th International Middleware Conference, Proceedings. Vol. 7049 LNCS 2011. p. 431-450.
Research output: Chapter in book/report/conference proceeding › Conference contribution › Research › peer review
}
TY - GEN
T1 - Co-managing software and hardware modules through the juggle middleware
AU - Rellermeyer, Jan
AU - Küpfer, Ramon
PY - 2011
Y1 - 2011
N2 - Reprogrammable hardware like Field-Programmable Gate Arrays (FPGAs) is becoming increasingly powerful and affordable. Modern FPGA chips can be reprogrammed at runtime and with low latency which makes them attractive to be used as a dynamic resource in systems. For instance, on mobile devices FPGAs can help to accelerate the performance of critical tasks and at the same time increase the energy-efficiency of the device. The integration of FPGA resources into commodity software, however, is a highly involved task. On the one hand, there is an impedance mismatch between the hardware description languages in which FPGAs are programmed and the high-level languages in which many mobile applications are nowadays developed. On the other hand, the FPGA is a limited and shared resource and as such requires explicit resource management. In this paper, we present the Juggle middleware which leverages the ideas of modularity and service-orientation to facilitate a seamless exchange of hardware and software implementations at runtime. Juggle is built around the well-established OSGi standard for software modules in Java and extends it with support for services implemented in reprogrammable hardware, thereby leveraging the same level of management for both worlds. We show that hardware-accelerated services implemented with Juggle can help to increase the performance of applications and reduce power consumption on mobile devices without requiring any changes to existing program code.
AB - Reprogrammable hardware like Field-Programmable Gate Arrays (FPGAs) is becoming increasingly powerful and affordable. Modern FPGA chips can be reprogrammed at runtime and with low latency which makes them attractive to be used as a dynamic resource in systems. For instance, on mobile devices FPGAs can help to accelerate the performance of critical tasks and at the same time increase the energy-efficiency of the device. The integration of FPGA resources into commodity software, however, is a highly involved task. On the one hand, there is an impedance mismatch between the hardware description languages in which FPGAs are programmed and the high-level languages in which many mobile applications are nowadays developed. On the other hand, the FPGA is a limited and shared resource and as such requires explicit resource management. In this paper, we present the Juggle middleware which leverages the ideas of modularity and service-orientation to facilitate a seamless exchange of hardware and software implementations at runtime. Juggle is built around the well-established OSGi standard for software modules in Java and extends it with support for services implemented in reprogrammable hardware, thereby leveraging the same level of management for both worlds. We show that hardware-accelerated services implemented with Juggle can help to increase the performance of applications and reduce power consumption on mobile devices without requiring any changes to existing program code.
KW - FPGA
KW - Hardware Acceleration
KW - OSGi
KW - SDG 7 - Affordable and Clean Energy
U2 - 10.1007/978-3-642-25821-3_22
DO - 10.1007/978-3-642-25821-3_22
M3 - Conference contribution
SN - 9783642258206
VL - 7049 LNCS
SP - 431
EP - 450
BT - Middleware 2011 - ACM/IFIP/USENIX 12th International Middleware Conference, Proceedings
T2 - 12th ACM/IFIP/USENIX International Middleware Conference, Middleware 2011
Y2 - 12 December 2011 through 16 December 2011
ER -