skip to main content
10.1145/3297858.3304010acmconferencesArticle/Chapter ViewAbstractPublication PagesasplosConference Proceedingsconference-collections
research-article

Just-In-Time Compilation for Verilog: A New Technique for Improving the FPGA Programming Experience

Published: 04 April 2019 Publication History

Abstract

FPGAs offer compelling acceleration opportunities for modern applications. However compilation for FPGAs is painfully slow, potentially requiring hours or longer. We approach this problem with a solution from the software domain: the use of a JIT. Code is executed immediately in a software simulator, and compilation is performed in the background. When finished, the code is moved into hardware, and from the user's perspective it simply gets faster. We have embodied these ideas in Cascade: the first JIT compiler for Verilog. Cascade reduces the time between initiating compilation and running code to less than a second, and enables generic printf debugging from hardware. Cascade preserves program performance to within 3× in a debugging environment, and has minimal effect on a finalized design. Crucially, these properties hold even for programs that perform side effects on connected IO devices. A user study demonstrates the value to experts and non-experts alike: Cascade encourages more frequent compilation, and reduces the time to produce working hardware designs.

References

[1]
{n. d.}. AppArmor. http://www.xilinx.com/products/designtools/ software-zone/sdaccel.html.
[2]
{n. d.}. Cadence Palladium XP II Verification Computing Platform. https://www.cadence.com/content/dam/cadence-www/global/ enUS/documents/tools/system-design-verification/palladium-xpiitb. pdf. (Accessed January 2019).
[3]
{n. d.}. Debian -- Details of Package fpgatools. https:// packages.debian.org/stretch/fpgatools. (Accessed July 2018).
[4]
{n. d.}. FPGAMiner. https://github.com/fpgaminer/Open-Source- FPGA-Bitcoin-Miner. (Accessed July 2018).
[5]
{n. d.}. SymbiFlow. https://symbiflow.github.io/. (Accessed July 2018).
[6]
2006. IEEE Standard for Verilog Hardware Description Language. IEEE Std 1364--2005 (Revision of IEEE Std 1364--2001) (2006), 1--560.
[7]
2009. IEEE Standard VHDL Language Reference Manual. IEEE Std 1076--2008 (Revision of IEEE Std 1076--2002) (Jan 2009), c1--626.
[8]
2017. Avalon Interface Specifications.
[9]
2017. Device Handbook - Altera Cyclone V.
[10]
2017. Intel unveils new Xeon chip with integrated FPGA, touts 20x performance boost - ExtremeTech. https://www.extremetech.com/ extreme/184828-intel-unveils-new-xeon-chip-with-integrated-fpgatouts- 20x-performance-boost
[11]
Michael Adler, Kermin E. Fleming, Angshuman Parashar, Michael Pellauer, and Joel Emer. 2011. Leap Scratchpads: Automatic Memory and Cache Management for Reconfigurable Logic. In Proceedings of the 19th ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA '11). ACM, New York, NY, USA, 25--28.
[12]
K Aehlig et al. 2016. Bazel: Correct, reproducible, fast builds for everyone. https://bazel.io
[13]
Erik Anderson, Jason Agron, Wesley Peck, Jim Stevens, Fabrice Baijot, Ron Sass, and David Andrews. 2006. Enabling a Uniform Programming Model across the Software/Hardware Boundary. FCCM '06.
[14]
Joshua Auerbach, David F. Bacon, Perry Cheng, and Rodric Rabbah. 2010. Lime: A Java-compatible and Synthesizable Language for Heterogeneous Architectures. In Proceedings of the ACM International Conference on Object Oriented Programming Systems Languages and Applications (OOPSLA '10). ACM, New York, NY, USA, 89--108.
[15]
Saul B. Needleman and Christian D.Wunsch. 1970. A General Method Applicable to Search for Similarities in Amino Acid Sequence of 2 Proteins. Journal of molecular biology 48 (04 1970), 443--53.
[16]
Jonathan Bachrach, Huy Vo, Brian C. Richards, Yunsup Lee, Andrew Waterman, Rimas Avizienis, John Wawrzynek, and Krste Asanovic. 2012. Chisel: constructing hardware in a Scala embedded language. In The 49th Annual Design Automation Conference 2012, DAC '12, San Francisco, CA, USA, June 3--7, 2012. 1216--1225.
[17]
Alexander Brant and Guy GF Lemieux. 2012. ZUMA: An open FPGA overlay architecture. In Field-Programmable Custom Computing Machines (FCCM), 2012 IEEE 20th Annual International Symposium on. IEEE, 93--96.
[18]
Gordon J. Brebner. 1996. A Virtual Hardware Operating System for the Xilinx XC6200. In Proceedings of the 6th International Workshop on Field-Programmable Logic, Smart Applications, New Paradigms and Compilers (FPL '96). Springer-Verlag, London, UK, UK, 327--336.
[19]
Stuart Byma, Naif Tarafdar, Talia Xu, Hadi Bannazadeh, Alberto Leon- Garcia, and Paul Chow. 2015. Expanding OpenFlow Capabilities with Virtualized Reconfigurable Hardware. In Proceedings of the 2015 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA '15). ACM, New York, NY, USA, 94--97.
[20]
Jared Casper and Kunle Olukotun. 2014. Hardware Acceleration of Database Operations. In Proceedings of the 2014 ACM/SIGDA International Symposium on Field-programmable Gate Arrays (FPGA '14). ACM, New York, NY, USA, 151--160.
[21]
Adrian Caulfield, Eric Chung, Andrew Putnam, Hari Angepat, Jeremy Fowers, Michael Haselman, Stephen Heil, Matt Humphrey, Puneet Kaur, Joo-Young Kim, Daniel Lo, Todd Massengill, Kalin Ovtcharov, Michael Papamichael, Lisa Woods, Sitaram Lanka, Derek Chiou, and Doug Burger. 2016. A Cloud-Scale Acceleration Architecture, In Proceedings of the 49th Annual IEEE/ACM International Symposium on Microarchitecture.
[22]
Fei Chen, Yi Shan, Yu Zhang, Yu Wang, Hubertus Franke, Xiaotao Chang, and Kun Wang. 2014. Enabling FPGAs in the Cloud. In Proceedings of the 11th ACM Conference on Computing Frontiers (CF '14). ACM, New York, NY, USA, Article 3, 10 pages.
[23]
Liang Chen, Thomas Marconi, and Tulika Mitra. 2012. Online Scheduling for Multi-core Shared Reconfigurable Fabric. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE '12). EDA Consortium, San Jose, CA, USA, 582--585.
[24]
Eric S. Chung, John D. Davis, and Jaewon Lee. 2013. LINQits: Big Data on Little Clients. In 40th International Symposium on Computer Architecture. ACM.
[25]
Philippe Coussy and Adam Morawiec. 2008. High-level synthesis: from algorithm to digital circuit. Springer Science & Business Media.
[26]
Louise H Crockett, Ross A Elliot, Martin A Enderwitz, and Robert W Stewart. 2014. The Zynq Book: Embedded Processing with the Arm Cortex-A9 on the Xilinx Zynq-7000 All Programmable Soc. Strathclyde Academic Media.
[27]
Guohao Dai, Yuze Chi, Yu Wang, and Huazhong Yang. 2016. FPGP: Graph Processing Framework on FPGA A Case Study of Breadth-First Search. In Proceedings of the 2016 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA '16). ACM, New York, NY, USA, 105--110.
[28]
André DeHon, Yury Markovsky, Eylon Caspi, Michael Chu, Randy Huang, Stylianos Perissakis, Laura Pozzi, Joseph Yeh, and John Wawrzynek. 2006. Stream computations organized for reconfigurable execution. Microprocessors and Microsystems 30, 6 (2006), 334--354.
[29]
Amazon EC2. 2017. Amazon EC2 F1 Instances.
[30]
Hamed Esfahani, Jonas Fietz, Qi Ke, Alexei Kolomiets, Erica Lan, Erik Mavrinac, Wolfram Schulte, Newton Sanches, and Srikanth Kandula. 2016. CloudBuild: Microsoft's distributed and caching build service. In Proceedings of the 38th International Conference on Software Engineering, ICSE 2016, Austin, TX, USA, May 14--22, 2016 - Companion Volume. 11-- 20.
[31]
W. Fu and K. Compton. 2008. Scheduling Intervals for Reconfigurable Computing. In Field-Programmable Custom Computing Machines, 2008. FCCM '08. 16th International Symposium on. 87--96.
[32]
K Funk et al. 2016. icecream. https://github.com/icecc/icecream
[33]
GNU. {n. d.}. GTKWave. http://gtkwave.sourceforge.net. (Accessed July 2018).
[34]
Ivan Gonzalez, Sergio Lopez-Buedo, Gustavo Sutter, Diego Sanchez- Roman, Francisco J. Gomez-Arribas, and Javier Aracil. 2012. Virtualization of Reconfigurable Coprocessors in HPRC Systems with Multicore Architecture. J. Syst. Archit. 58, 6--7 (June 2012), 247--256.
[35]
B. K. Hamilton, M. Inggs, and H. K. H. So. 2014. Scheduling Mixed- Architecture Processes in Tightly Coupled FPGA-CPU Reconfigurable Computers. In Field-Programmable Custom Computing Machines (FCCM), 2014 IEEE 22nd Annual International Symposium on. 240--240.
[36]
Arria V Device Handbook. 2012. Volume 1: Device Overview and Datasheet. (2012).
[37]
Allan Heydon, Timothy Mann, Roy Levin, and Yuan Yu. 2006. Software Configuration Management Using Vesta. Springer.
[38]
SRC Computers Inc. 2006. Carte Programming Environment.
[39]
Intel. 2018. Intel Quartus Prime Software. https: //www.altera.com/products/design-software/fpga-design/quartusprime/ download.html
[40]
Zsolt István, David Sidler, and Gustavo Alonso. 2017. Caribou: Intelligent Distributed Storage. PVLDB 10, 11 (2017), 1202--1213.
[41]
Zsolt István, David Sidler, Gustavo Alonso, and Marko Vukolic. 2016. Consensus in a Box: Inexpensive Coordination in Hardware. In Proceedings of the 13th Usenix Conference on Networked Systems Design and Implementation (NSDI'16). USENIX Association, Berkeley, CA, USA, 425--438.
[42]
Alexander Kaganov, Asif Lakhany, and Paul Chow. 2011. FPGA Acceleration of MultiFactor CDO Pricing. ACM Trans. Reconfigurable Technol. Syst. 4, 2, Article 20 (May 2011), 17 pages.
[43]
H. Kalte and M. Porrmann. 2005. Context saving and restoring for multitasking in reconfigurable systems. In Field Programmable Logic and Applications, 2005. International Conference on. 223--228.
[44]
Rüdiger Kapitza, Johannes Behl, Christian Cachin, Tobias Distler, Simon Kuhnle, Seyed Vahid Mohammadi,Wolfgang Schröder-Preikschat, and Klaus Stengel. 2012. CheapBFT: Resource-efficient Byzantine Fault Tolerance. In Proceedings of the 7th ACM European Conference on Computer Systems (EuroSys '12). ACM, New York, NY, USA, 295--308.
[45]
Nachiket Kapre and Jan Gray. 2015. Hoplite: Building austere overlay NoCs for FPGAs. In FPL. IEEE, 1--8.
[46]
Kaan Kara and Gustavo Alonso. 2016. Fast and robust hashing for database operators. In 26th International Conference on Field Programmable Logic and Applications, FPL 2016, Lausanne, Switzerland, August 29 - September 2, 2016. 1--4.
[47]
Ahmed Khawaja, Joshua Landgraf, Rohith Prakash, MichaelWei, Eric Schkufza, and Christopher J. Rossbach. 2018. "Sharing, Protection and Compatibility for Reconfigurable Fabric with AmorphOS". In Proceedings of the 12th USENIX Symposium on Operating Systems Design and Implementation. (OSDI). Carlsbad, CA.
[48]
Khronos Group 2009. The OpenCL Specification, Version 1.0. Khronos Group.
[49]
Robert Kirchgessner, Alan D. George, and Greg Stitt. 2015. Low- Overhead FPGA Middleware for Application Portability and Productivity. ACM Trans. Reconfigurable Technol. Syst. 8, 4, Article 21 (Sept. 2015), 22 pages.
[50]
Robert Kirchgessner, Greg Stitt, Alan George, and Herman Lam. 2012. VirtualRC: A Virtual FPGA Platform for Applications and Tools Portability. In Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays (FPGA '12). ACM, New York, NY, USA, 205--208.
[51]
Avi Kivity, Yaniv Kamay, Dor Laor, Uri Lublin, and Anthony Liguori. 2007. kvm: the Linux virtual machine monitor. In Proceedings of the Linux symposium, Vol. 1. 225--230.
[52]
Dirk Koch, Christian Beckhoff, and Guy G. F. Lemieux. 2013. An efficient FPGA overlay for portable custom instruction set extensions. In FPL. IEEE, 1--8.
[53]
David Koeplinger, Christina Delimitrou, Raghu Prabhakar, Christos Kozyrakis, Yaqi Zhang, and Kunle Olukotun. 2016. Automatic Generation of Efficient Accelerators for Reconfigurable Hardware. In Proceedings of the 43rd International Symposium on Computer Architecture (ISCA '16). IEEE Press, Piscataway, NJ, USA, 115--127.
[54]
David Koeplinger, Matthew Feldman, Raghu Prabhakar, Yaqi Zhang, Stefan Hadjis, Ruben Fiszel, Tian Zhao, Luigi Nardi, Ardavan Pedram, Christos Kozyrakis, and Kunle Olukotun. 2018. Spatial: A Language and Compiler for Application Accelerators. In Proceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2018). ACM, New York, NY, USA, 296--311.
[55]
James Lebak, Jeremy Kepner, Henry Hoffmann, and Edward Rutledge. 2005. Parallel VSIPL++: An open standard software library for highperformance parallel signal processing. Proc. IEEE 93, 2 (2005), 313-- 330.
[56]
Ilia A. Lebedev, Christopher W. Fletcher, Shaoyi Cheng, James Martin, Austin Doupnik, Daniel Burke, Mingjie Lin, and John Wawrzynek. 2012. Exploring Many-Core Design Templates for FPGAs and ASICs. Int. J. Reconfig. Comp. 2012 (2012), 439141:1--439141:15.
[57]
Christian Leber, Benjamin Geib, and Heiner Litz. 2011. High Frequency Trading Acceleration Using FPGAs. In Proceedings of the 2011 21st International Conference on Field Programmable Logic and Applications (FPL '11). IEEE Computer Society, Washington, DC, USA, 317--322.
[58]
Trong-Yen Lee, Che-Cheng Hu, Li-Wen Lai, and Chia-Chun Tsai. 2010. Hardware Context-Switch Methodology for Dynamically Partially Reconfigurable Systems. J. Inf. Sci. Eng. 26 (2010), 1289--1305.
[59]
L. Levinson, R. Manner, M. Sessler, and H. Simmler. 2000. Preemptive multitasking on FPGAs. In Field-Programmable Custom Computing Machines, 2000 IEEE Symposium on. 301--302.
[60]
Sheng Li, Hyeontaek Lim, Victor W. Lee, Jung Ho Ahn, Anuj Kalia, Michael Kaminsky, David G. Andersen, O. Seongil, Sukhan Lee, and Pradeep Dubey. 2015. Architecting to Achieve a Billion Requests Per Second Throughput on a Single Key-value Store Server Platform. In Proceedings of the 42Nd Annual International Symposium on Computer Architecture (ISCA '15). ACM, New York, NY, USA, 476--488.
[61]
Enno Lübbers and Marco Platzner. 2009. ReconOS: Multithreaded Programming for Reconfigurable Computers. ACM Trans. Embed. Comput. Syst. 9, 1, Article 8 (Oct. 2009), 33 pages.
[62]
Microsoft. 2017. Microsoft Azure Goes Back To Rack Servers With Project Olympus.
[63]
Mahim Mishra, Timothy J. Callahan, Tiberiu Chelcea, Girish Venkataramani, Seth C. Goldstein, and Mihai Budiu. 2006. Tartan: Evaluating Spatial Computation for Whole Program Execution. SIGOPS Oper. Syst. Rev. 40, 5 (Oct. 2006), 163--174.
[64]
Nicholas Moore, Albert Conti, Miriam Leeser, Benjamin Cordes, and Laurie Smith King. 2007. An extensible framework for application portability between reconfigurable supercomputing architectures.
[65]
Rishiyur Nikhil. 2004. Bluespec System Verilog: efficient, correct RTL from high level specifications. In Formal Methods and Models for Co-Design, 2004. MEMOCODE'04. Proceedings. Second ACM and IEEE International Conference on. IEEE, 69--70.
[66]
Tayo Oguntebi and Kunle Olukotun. 2016. GraphOps: A Dataflow Library for Graph Analytics Acceleration. In Proceedings of the 2016 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA '16). ACM, New York, NY, USA, 111--117.
[67]
K. Dang Pham, A. K. Jain, J. Cui, S. A. Fahmy, and D. L. Maskell. 2013. Microkernel hypervisor for a hybrid ARM-FPGA platform. In Application-Specific Systems, Architectures and Processors (ASAP), 2013 IEEE 24th International Conference on. 219--226.
[68]
Christian Plessl and Marco Platzner. 2005. Zippy-A coarse-grained reconfigurable array with support for hardware virtualization. In Application-Specific Systems, Architecture Processors, 2005. ASAP 2005. 16th IEEE International Conference on. IEEE, 213--218.
[69]
M Pool et al. 2016. distcc: A free distributed C/C++ compiler system. https://github.com/distcc/distcc
[70]
Raghu Prabhakar, Yaqi Zhang, David Koeplinger, Matt Feldman, Tian Zhao, Stefan Hadjis, Ardavan Pedram, Christos Kozyrakis, and Kunle Olukotun. 2017. Plasticine: A Reconfigurable Architecture For Parallel Paterns. In Proceedings of the 44th Annual International Symposium on Computer Architecture (ISCA '17). ACM, New York, NY, USA, 389--402.
[71]
Andrew Putnam, Adrian Caulfield, Eric Chung, Derek Chiou, Kypros Constantinides, John Demme, Hadi Esmaeilzadeh, Jeremy Fowers, Gopi Prashanth Gopal, Jan Gray, Michael Haselman, Scott Hauck, Stephen Heil, Amir Hormati, Joo-Young Kim, Sitaram Lanka, Jim Larus, Eric Peterson, Simon Pope, Aaron Smith, Jason Thong, Phillip Yi Xiao, and Doug Burger. 2014. AReconfigurable Fabric forAccelerating Large- Scale Datacenter Services. In 41st Annual International Symposium on Computer Architecture (ISCA).
[72]
Kyle Rupnow, Wenyin Fu, and Katherine Compton. 2009. Block, Drop or Roll(back): Alternative Preemption Methods for RH Multi-Tasking. In FCCM 2009, 17th IEEE Symposium on Field Programmable Custom Computing Machines, Napa, California, USA, 5--7 April 2009, Proceedings. 63--70.
[73]
J. Russell and R. Cohn. 2012. Icarus Verilog. Book on Demand. https: //books.google.co.uk/books?id=ZNanMQEACAAJ
[74]
Omar Sefraoui, Mohammed Aissaoui, and Mohsine Eleuldj. 2012. Open- Stack: toward an open-source solution for cloud computing. International Journal of Computer Applications 55, 3 (2012).
[75]
Yi Shan, BoWang, Jing Yan, YuWang, Ning-Yi Xu, and Huazhong Yang. 2010. FPMR: MapReduce framework on FPGA. In FPGA (2010-03-01), Peter Y. K. Cheung and John Wawrzynek (Eds.). ACM, 93--102.
[76]
WSnyder, D Galbi, and PWasson. 2018. Verilator. https://veripool.org/ wiki/verilator
[77]
Hayden Kwok-Hay So and Robert Brodersen. 2008. A Unified Hardware/ Software Runtime Environment for FPGA-based Reconfigurable Computers Using BORPH. ACM Trans. Embed. Comput. Syst. 7, 2, Article 14 (Jan. 2008), 28 pages.
[78]
Hayden Kwok-Hay So and Robert W. Brodersen. 2007. BORPH: An Operating System for FPGA-Based Reconfigurable Computers. Ph.D. Dissertation. EECS Department, University of California, Berkeley. http: //www.eecs.berkeley.edu/Pubs/TechRpts/2007/EECS-2007--92.html
[79]
Hayden Kwok-Hay So and John Wawrzynek. 2016. OLAF'16: Second International Workshop on Overlay Architectures for FPGAs. In Proceedings of the 2016 ACM/SIGDA International Symposium on Field- Programmable Gate Arrays (FPGA '16). ACM, New York, NY, USA, 1--1.
[80]
Haoyu Song, Todd S. Sproull, Michael Attig, and John W. Lockwood. 2005. Snort Offloader: A Reconfigurable Hardware NIDS Filter. In Proceedings of the 2005 International Conference on Field Programmable Logic and Applications (FPL), Tampere, Finland, August 24--26, 2005. 493--498.
[81]
C. Steiger, H. Walder, and M. Platzner. 2004. Operating systems for reconfigurable embedded platforms: online scheduling of real-time tasks. IEEE Trans. Comput. 53, 11 (Nov 2004), 1393--1407.
[82]
Naveen Suda, Vikas Chandra, Ganesh Dasika, Abinash Mohanty, Yufei Ma, Sarma Vrudhula, Jae-sun Seo, and Yu Cao. 2016. Throughput- Optimized OpenCL-based FPGA Accelerator for Large-Scale Convolutional Neural Networks. In Proceedings of the 2016 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA '16). ACM, New York, NY, USA, 16--25.
[83]
Lambert M. Surhone, Mariam T. Tennoe, and Susan F. Henssonow. 2010. Node.Js. Betascript Publishing, Mauritius.
[84]
A Tridgell, J Rosdahl, et al. 2016. ccache: A Fast C/C++ Compiler Cache. https://ccache.samba.org
[85]
A. Tsutsui, T. Miyazaki, K. Yamada, and N. Ohta. 1995. Special Purpose FPGA for High-speed Digital Telecommunication Systems. In Proceedings of the 1995 International Conference on Computer Design: VLSI in Computers and Processors (ICCD '95). IEEE Computer Society, Washington, DC, USA, 486--491.
[86]
G. Wassi, Mohamed El Amine Benkhelifa, G. Lawday, F. Verdier, and S. Garcia. 2014. Multi-shape tasks scheduling for online multitasking on FPGAs. In Reconfigurable and Communication-Centric Systems-on-Chip (ReCoSoC), 2014 9th International Symposium on. 1--7.
[87]
Tobias Wiersema, Ame Bockhorn, and Marco Platzner. 2014. Embedding FPGA overlays into configurable Systems-on-Chip: ReconOS meets ZUMA. In ReConFig. IEEE, 1--6.
[88]
Clifford Wolf. {n. d.}. Yosys Open SYnthesis Suite. http:// www.clifford.at/yosys/. (Accessed July 2018).
[89]
Xilinx. 2018. Vivado Design Suite. https://www.xilinx.com/products/ design-tools/vivado.html
[90]
Chen Zhang, Peng Li, Guangyu Sun, Yijin Guan, Bingjun Xiao, and Jason Cong. 2015. Optimizing FPGA-based Accelerator Design for Deep Convolutional Neural Networks. In Proceedings of the 2015 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA '15). ACM, New York, NY, USA, 161--170.

Cited By

View all
  • (2024)vFPIOProceedings of the 2024 USENIX Conference on Usenix Annual Technical Conference10.5555/3691992.3692063(1167-1184)Online publication date: 10-Jul-2024
  • (2024)Compiler-Driven FPGA Virtualization with SYNERGYCommunications of the ACM10.1145/3613903Online publication date: 7-May-2024
  • (2023)ExHiPR: Extended High-level Partial Reconfiguration for Fast Incremental FPGA CompilationACM Transactions on Reconfigurable Technology and Systems10.1145/3617837Online publication date: 14-Sep-2023
  • Show More Cited By

Index Terms

  1. Just-In-Time Compilation for Verilog: A New Technique for Improving the FPGA Programming Experience

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Conferences
      ASPLOS '19: Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systems
      April 2019
      1126 pages
      ISBN:9781450362405
      DOI:10.1145/3297858
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Sponsors

      In-Cooperation

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 04 April 2019

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. cascade
      2. compiler
      3. fpga
      4. jit
      5. just-in-time
      6. verilog

      Qualifiers

      • Research-article

      Conference

      ASPLOS '19

      Acceptance Rates

      ASPLOS '19 Paper Acceptance Rate 74 of 351 submissions, 21%;
      Overall Acceptance Rate 535 of 2,713 submissions, 20%

      Upcoming Conference

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)81
      • Downloads (Last 6 weeks)1
      Reflects downloads up to 17 Feb 2025

      Other Metrics

      Citations

      Cited By

      View all
      • (2024)vFPIOProceedings of the 2024 USENIX Conference on Usenix Annual Technical Conference10.5555/3691992.3692063(1167-1184)Online publication date: 10-Jul-2024
      • (2024)Compiler-Driven FPGA Virtualization with SYNERGYCommunications of the ACM10.1145/3613903Online publication date: 7-May-2024
      • (2023)ExHiPR: Extended High-level Partial Reconfiguration for Fast Incremental FPGA CompilationACM Transactions on Reconfigurable Technology and Systems10.1145/3617837Online publication date: 14-Sep-2023
      • (2023)CPU-free Computing: A Vision with a BlueprintProceedings of the 19th Workshop on Hot Topics in Operating Systems10.1145/3593856.3595906(1-14)Online publication date: 22-Jun-2023
      • (2023)Reconfigurable Virtual Memory for FPGA-Driven I/OProceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 310.1145/3582016.3582048(556-571)Online publication date: 25-Mar-2023
      • (2023)Vidi: Record Replay for Reconfigurable HardwareProceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 310.1145/3582016.3582040(806-820)Online publication date: 25-Mar-2023
      • (2023)RepCut: Superlinear Parallel RTL Simulation with Replication-Aided PartitioningProceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 310.1145/3582016.3582034(572-585)Online publication date: 25-Mar-2023
      • (2023)Stepwise Debugging for Hardware AcceleratorsProceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 210.1145/3575693.3575717(778-790)Online publication date: 27-Jan-2023
      • (2022)Applications and Techniques for Fast Machine Learning in ScienceFrontiers in Big Data10.3389/fdata.2022.7874215Online publication date: 12-Apr-2022
      • (2022)Towards a fully disaggregated and programmable data centerProceedings of the 13th ACM SIGOPS Asia-Pacific Workshop on Systems10.1145/3546591.3547527(18-28)Online publication date: 23-Aug-2022
      • Show More Cited By

      View Options

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Figures

      Tables

      Media

      Share

      Share

      Share this Publication link

      Share on social media