jit assisted fast forward embedding and instrumentation
play

JIT-Assisted Fast-Forward Embedding and Instrumentation to Enable - PowerPoint PPT Presentation

JIT-Assisted Fast-Forward Embedding and Instrumentation to Enable Fast, Accurate, and Agile Simulation Berkin Ilbeyi and Christopher Batten Computer Systems Laboratory School of Electrical and Computer Engineering Cornell University


  1. JIT-Assisted Fast-Forward Embedding and Instrumentation to Enable Fast, Accurate, and Agile Simulation Berkin Ilbeyi and Christopher Batten Computer Systems Laboratory School of Electrical and Computer Engineering Cornell University ISPASS-2016, April 2016

  2. • Motivation • Pydgin Overview JIT-FFE JIT-FFI Results Motivation “Traditional” Computer Architects Cornell University Berkin Ilbeyi 2 / 19

  3. • Motivation • Pydgin Overview JIT-FFE JIT-FFI Results Motivation Emerging workloads require re-thinking the entire compute stack. Existing Fast and Accurate simulation methodologies exploit the fact that portions of the stack are “locked”. Agile: quickly make changes in any layer of the stack without penalties Cornell University Berkin Ilbeyi 2 / 19

  4. • Motivation • Pydgin Overview JIT-FFE JIT-FFI Results Simulation and Evaluation Methodologies Fast Accurate Agile Native execution yes no yes ∗ Interpreter based ISS no no yes Dynamic Binary Translation based ISS yes no yes Detailed simulation no yes yes Running detailed simulation to completion for realistic workloads is unfeasible ( over a year of simulation time! ) Cornell University Berkin Ilbeyi 3 / 19

  5. • Motivation • Pydgin Overview JIT-FFE JIT-FFI Results Over 99.9% of detailed simulation can be eliminated! Cornell University Berkin Ilbeyi 4 / 19

  6. • Motivation • Pydgin Overview JIT-FFE JIT-FFI Results Fast Accurate Agile Native execution yes no yes ∗ Interpreter based ISS no no yes Dynamic Binary Translation based ISS yes no yes Detailed simulation no yes yes Sampling: Fast-forwarding no yes yes Cornell University Berkin Ilbeyi 5 / 19

  7. • Motivation • Pydgin Overview JIT-FFE JIT-FFI Results Fast Accurate Agile Native execution yes no yes ∗ Interpreter based ISS no no yes Dynamic Binary Translation based ISS yes no yes Detailed simulation no yes yes Sampling: Fast-forwarding no yes yes Sampling: Checkpointing yes yes no Cornell University Berkin Ilbeyi 5 / 19

  8. • Motivation • Pydgin Overview JIT-FFE JIT-FFI Results Fast Accurate Agile Native execution yes no yes ∗ Interpreter based ISS no no yes Dynamic Binary Translation based ISS yes no yes Detailed simulation no yes yes Sampling: Fast-forwarding no yes yes Sampling: Checkpointing yes yes no Sampling: Native-on-native execution yes yes yes ∗ ∗ Not fully agile because the target ISA needs to match the host ISA Cornell University Berkin Ilbeyi 5 / 19

  9. • Motivation • Pydgin Overview JIT-FFE JIT-FFI Results Fast Accurate Agile Native execution yes no yes ∗ Interpreter based ISS no no yes Dynamic Binary Translation based ISS yes no yes Detailed simulation no yes yes Sampling: Fast-forwarding no yes yes Sampling: Checkpointing yes yes no Sampling: Native-on-native execution yes yes yes ∗ Goal yes yes yes Cornell University Berkin Ilbeyi 5 / 19

  10. • Motivation • Pydgin Overview JIT-FFE JIT-FFI Results Challenges of using DBT ISS for Fast Forwarding ◮ Problem: Large architectural state transfers may hurt performance ⊲ Solution: JIT-Assisted Fast Forward Embedding (JIT-FFE). Embed DBT ISS in the detailed simulator which allows fast- and zero-copy architectural state transfer Cornell University Berkin Ilbeyi 6 / 19

  11. • Motivation • Pydgin Overview JIT-FFE JIT-FFI Results Challenges of using DBT ISS for Fast Forwarding ◮ Problem: Large architectural state transfers may hurt performance ⊲ Solution: JIT-Assisted Fast Forward Embedding (JIT-FFE). Embed DBT ISS in the detailed simulator which allows fast- and zero-copy architectural state transfer ◮ Problem: Functional profiling and warmup may hurt performance ⊲ Solution: JIT-Assisted Fast Forward Instrumentation (JIT-FFI). Use Pydgin and RPython’s meta-tracing JIT to easily add JIT-compiled instrumentation. Cornell University Berkin Ilbeyi 6 / 19

  12. • Motivation • Pydgin Overview JIT-FFE JIT-FFI Results Challenges of using DBT ISS for Fast Forwarding ◮ Problem: Large architectural state transfers may hurt performance ⊲ Solution: JIT-Assisted Fast Forward Embedding (JIT-FFE). Embed DBT ISS in the detailed simulator which allows fast- and zero-copy architectural state transfer ◮ Problem: Functional profiling and warmup may hurt performance ⊲ Solution: JIT-Assisted Fast Forward Instrumentation (JIT-FFI). Use Pydgin and RPython’s meta-tracing JIT to easily add JIT-compiled instrumentation. PydginFF = Pydgin [ISPASS-2015] + JIT-FFE + JIT-FFI Cornell University Berkin Ilbeyi 6 / 19

  13. Motivation • Pydgin Overview • JIT-FFE JIT-FFI Results Outline ◮ Motivation ◮ Pydgin Overview ◮ JIT-Assisted Fast-Forward Embedding ◮ JIT-Assisted Fast-Forward Instrumentation ◮ Results Cornell University Berkin Ilbeyi 7 / 19

  14. Motivation • Pydgin Overview • JIT-FFE JIT-FFI Results Pydgin Overview Meta-Tracing JIT: the trace of interpreter interpreting the instructions is JIT compiled Cornell University Berkin Ilbeyi 8 / 19

  15. Motivation Pydgin Overview • JIT-FFE • JIT-FFI Results Outline ◮ Motivation ◮ Pydgin Overview ◮ JIT-Assisted Fast-Forward Embedding ◮ JIT-Assisted Fast-Forward Instrumentation ◮ Results Cornell University Berkin Ilbeyi 9 / 19

  16. Motivation Pydgin Overview • JIT-FFE • JIT-FFI Results ◮ Problem: Large architectural state transfers may hurt performance. ⊲ Solution: JIT-Assisted Fast Forward Embedding (JIT-FFE). Embed DBT ISS in detailed simulator for fast- and zero-copy architectural state transfer. Cornell University Berkin Ilbeyi 10 / 19

  17. Motivation Pydgin Overview • JIT-FFE • JIT-FFI Results JIT-Assisted Fast-Forward Embedding Cornell University Berkin Ilbeyi 11 / 19

  18. Motivation Pydgin Overview JIT-FFE • JIT-FFI • Results Outline ◮ Motivation ◮ Pydgin Overview ◮ JIT-Assisted Fast-Forward Embedding ◮ JIT-Assisted Fast-Forward Instrumentation ◮ Results Cornell University Berkin Ilbeyi 12 / 19

  19. Motivation Pydgin Overview JIT-FFE • JIT-FFI • Results Challenge ◮ Problem: Functional profiling and warmup may hurt performance. ⊲ Solution: JIT-Assisted Fast Forward Instrumentation (JIT-FFI). Use Pydgin and RPython’s meta-tracing JIT to easily add JIT-compiled instrumentation. Cornell University Berkin Ilbeyi 13 / 19

  20. Motivation Pydgin Overview JIT-FFE • JIT-FFI • Results Cornell University Berkin Ilbeyi 14 / 19

  21. Motivation Pydgin Overview JIT-FFE • JIT-FFI • Results Cornell University Berkin Ilbeyi 14 / 19

  22. Motivation Pydgin Overview JIT-FFE • JIT-FFI • Results Cornell University Berkin Ilbeyi 14 / 19

  23. Motivation Pydgin Overview JIT-FFE • JIT-FFI • Results Inlined Instrumentation with Data-Dependent Control-Flow Cornell University Berkin Ilbeyi 15 / 19

  24. Motivation Pydgin Overview JIT-FFE JIT-FFI • Results • Outline ◮ Motivation ◮ Pydgin Overview ◮ JIT-Assisted Fast-Forward Embedding ◮ JIT-Assisted Fast-Forward Instrumentation ◮ Results Cornell University Berkin Ilbeyi 16 / 19

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend