SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Downloaden Sie, um offline zu lesen
A Novel RISC Processor Architecture For
Garbage Collection in Embedded Systems




                © TLB GmbH, Karlsruhe 2012
Buffer Overflows are Responsible for a
Large Number of Today’s Security and Safety Problems




   In a standard computer system, dynamically growing data
    structures can overwrite unrelated data (buffer overflow)
   The standard processor architecture lacks protection mechanisms
    against buffer overflows
   Buffer overflow errors are a common cause for critical security
    vulnerabilities




                             © TLB GmbH, Karlsruhe 2012
Garbage Collection Helps Reduce Buffer Overflows,
But Causes High Overhead & Unpredictable Pauses




   Automatic dynamic memory management automatically releases and
    compacts dynamically allocated memory after its last use
   Such “garbage collection” reduces common error sources
    for buffer overflows
   Existing garbage collection is mostly software-based, demands a high
    overhead and causes unpredictable pauses in the program execution
   The limited resources of embedded systems typically do not allow
    for efficient garbage collection in real time

                              © TLB GmbH, Karlsruhe 2012
A Novel Approach Enables Parallel Garbage Collection
And Parallel Synchronization in Real-Time




   The novel RISC processor architecture is optimized for security:
      Strict separation of pointers from ordinary non-pointer data by using
       distinct register sets for pointers and data
   The dedicated coprocessor performs the garbage collection:
      The coprocessor uses an optimized Baker-style copying collector
       algorithm that runs in parallel to the main processor
      A new garbage collection cycle is started by the coprocessor when the
       available memory falls below a chosen threshold
   Simple hardware extensions to the processor pipeline support the
    synchronization between garbage collector and main processor
      Key for the efficient implementation to avoid unbounded pauses

                               © TLB GmbH, Karlsruhe 2012
This Novel Approach Improves Performance
By Leaving The Cache Largely Unaffected


   Software garbage collectors usually repeatedly
    displace the entire contents of the cache
      Examine the entire heap during a single cycle
   The coprocessor directly connects to the memory controller
      Does not access memory through the main processor’s cache
      The cache remains largely unaffected by the garbage collection
   The coprocessor ensures cache coherency
      Inspects and selectively flushes single cache lines through a dedicated
       cache port (resembles snoop port)
   The coprocessor eliminates unnecessary memory traffic
      Invalidates all cache lines with dead objects
       at the end of a garbage collection cycle




                                 © TLB GmbH, Karlsruhe 2012
A Fully Functional Prototype Exists
And Has Been Used For Performance Measurements

   Main processor & GC Coprocessor modeled at register transfer level
    in VHDL, synthesized for Altera APEX 20K1000C (@ 25MHz)
   Pipelined RISC processor, statically scheduled
      up to 3 instructions per clock cycle (3-way multiple issue, “in order”)
      16 pointer registers, 16 data registers, 8 Praedikatregister
      8K execution cache, 8K data cache, 2K attribute cache
      two-way set-associative copy-back cache
   Micro-coded garbage collection coprocessor
      256 x 80 bit on-chip microcode memory
      Uses less than 20% of the chip surface area
   Software
      Native Java bytecode compiler developed for the architecture.
        An included code scheduler rearranges instructions to take advantage of
        the processor’s parallel execution units and to hide instruction latencies
      Subset of the Java class libraries supporting text-based apps in order to
        facilitate the execution of representative programs (includes NFS client)

                                  © TLB GmbH, Karlsruhe 2012
An Experimental Computer System Was Assembled
Based On The Garbage-Collection Processor




                    © TLB GmbH, Karlsruhe 2012
Pauses Caused By Garbage Collection Do
Not Exceed 500 Clock Cycles


  Frequency distribution of synchronization pauses (shown for javac)




          Frequency




                      Pause Duration in Clock Cycles


                             © TLB GmbH, Karlsruhe 2012
The Runtime Overhead For The Hardware-Based
Garbage Collection Is Small




                    © TLB GmbH, Karlsruhe 2012
The Advantages Of This Approach Could Enable
Real-Time Garbage Collection in Embedded Systems



   Limits pauses from garbage collection to 500 clock cycles
   Efficient synchronization
      No code overhead
      Low total runtime overhead of only a few percent
   Undisturbed cache locality
   Exact (non-conservative) garbage collection
   Compiler & code are independent from garbage collector




                          © TLB GmbH, Karlsruhe 2012
BACKUP




         © TLB GmbH, Karlsruhe 2012
Efficient Implementation




                   © TLB GmbH, Karlsruhe 2012
Coprocessor Architecture




                  © TLB GmbH, Karlsruhe 2012
Synchronization I




                    © TLB GmbH, Karlsruhe 2012
Synchronization II




                     © TLB GmbH, Karlsruhe 2012
Synchronization III




                      © TLB GmbH, Karlsruhe 2012
Synchronization IV




                     © TLB GmbH, Karlsruhe 2012
The Runtime Overhead Is Small - I




                   © TLB GmbH, Karlsruhe 2012
The Runtime Overhead Is Small - II




                   © TLB GmbH, Karlsruhe 2012
The Runtime Overhead Is Small - III




                   © TLB GmbH, Karlsruhe 2012

Weitere ähnliche Inhalte

Ähnlich wie Presentation processor with integrated real time garbage collection

Presentation mongo db munich
Presentation mongo db munichPresentation mongo db munich
Presentation mongo db munich
MongoDB
 
AIST Super Green Cloud: lessons learned from the operation and the performanc...
AIST Super Green Cloud: lessons learned from the operation and the performanc...AIST Super Green Cloud: lessons learned from the operation and the performanc...
AIST Super Green Cloud: lessons learned from the operation and the performanc...
Ryousei Takano
 

Ähnlich wie Presentation processor with integrated real time garbage collection (20)

Tech trends 2018 2019
Tech trends 2018 2019Tech trends 2018 2019
Tech trends 2018 2019
 
Beginner's Guide to High Availability for Postgres
Beginner's Guide to High Availability for Postgres Beginner's Guide to High Availability for Postgres
Beginner's Guide to High Availability for Postgres
 
c-quilibrium R forecasting integration
c-quilibrium R forecasting integrationc-quilibrium R forecasting integration
c-quilibrium R forecasting integration
 
The Top 5 Reasons to Deploy Your Applications on Oracle RAC
The Top 5 Reasons to Deploy Your Applications on Oracle RACThe Top 5 Reasons to Deploy Your Applications on Oracle RAC
The Top 5 Reasons to Deploy Your Applications on Oracle RAC
 
Presentation mongo db munich
Presentation mongo db munichPresentation mongo db munich
Presentation mongo db munich
 
Introduction to C to Hardware (programming FPGAs and CPLDs in C)
Introduction to C to Hardware (programming FPGAs and CPLDs in C)Introduction to C to Hardware (programming FPGAs and CPLDs in C)
Introduction to C to Hardware (programming FPGAs and CPLDs in C)
 
Web Speed And Scalability
Web Speed And ScalabilityWeb Speed And Scalability
Web Speed And Scalability
 
Stream Data Processing at Big Data Landscape by Oleksandr Fedirko
Stream Data Processing at Big Data Landscape by Oleksandr Fedirko Stream Data Processing at Big Data Landscape by Oleksandr Fedirko
Stream Data Processing at Big Data Landscape by Oleksandr Fedirko
 
Processor with integrated real time garbage collection
Processor with integrated real time garbage collectionProcessor with integrated real time garbage collection
Processor with integrated real time garbage collection
 
Red Hat Storage Roadmap
Red Hat Storage RoadmapRed Hat Storage Roadmap
Red Hat Storage Roadmap
 
Red Hat Storage Roadmap
Red Hat Storage RoadmapRed Hat Storage Roadmap
Red Hat Storage Roadmap
 
Meetup Oracle Database: 3 Analizar, Aconsejar, Automatizar… las nuevas funcio...
Meetup Oracle Database: 3 Analizar, Aconsejar, Automatizar… las nuevas funcio...Meetup Oracle Database: 3 Analizar, Aconsejar, Automatizar… las nuevas funcio...
Meetup Oracle Database: 3 Analizar, Aconsejar, Automatizar… las nuevas funcio...
 
AIST Super Green Cloud: lessons learned from the operation and the performanc...
AIST Super Green Cloud: lessons learned from the operation and the performanc...AIST Super Green Cloud: lessons learned from the operation and the performanc...
AIST Super Green Cloud: lessons learned from the operation and the performanc...
 
OS for AI: Elastic Microservices & the Next Gen of ML
OS for AI: Elastic Microservices & the Next Gen of MLOS for AI: Elastic Microservices & the Next Gen of ML
OS for AI: Elastic Microservices & the Next Gen of ML
 
HPCC Presentation
HPCC PresentationHPCC Presentation
HPCC Presentation
 
Bounded Model Checking for C Programs in an Enterprise Environment
Bounded Model Checking for C Programs in an Enterprise EnvironmentBounded Model Checking for C Programs in an Enterprise Environment
Bounded Model Checking for C Programs in an Enterprise Environment
 
Atmosphere 2014: Switching from monolithic approach to modular cloud computin...
Atmosphere 2014: Switching from monolithic approach to modular cloud computin...Atmosphere 2014: Switching from monolithic approach to modular cloud computin...
Atmosphere 2014: Switching from monolithic approach to modular cloud computin...
 
New availability features in oracle rac 12c release 2 anair ss
New availability features in oracle rac 12c release 2 anair   ssNew availability features in oracle rac 12c release 2 anair   ss
New availability features in oracle rac 12c release 2 anair ss
 
Latest (storage IO) patterns for cloud-native applications
Latest (storage IO) patterns for cloud-native applications Latest (storage IO) patterns for cloud-native applications
Latest (storage IO) patterns for cloud-native applications
 
Slow things down to make them go faster [FOSDEM 2022]
Slow things down to make them go faster [FOSDEM 2022]Slow things down to make them go faster [FOSDEM 2022]
Slow things down to make them go faster [FOSDEM 2022]
 

Mehr von Dr. Andrea Nestl

Mehr von Dr. Andrea Nestl (20)

S3 l stromumwandler tlb
S3 l stromumwandler tlbS3 l stromumwandler tlb
S3 l stromumwandler tlb
 
S3 l inverter tlb
S3 l inverter tlbS3 l inverter tlb
S3 l inverter tlb
 
TLB GmbH Newsletter Feb 2013
TLB  GmbH Newsletter Feb 2013TLB  GmbH Newsletter Feb 2013
TLB GmbH Newsletter Feb 2013
 
TLB Patentseminar an der Hochschule Karlsruhe
TLB Patentseminar an der Hochschule KarlsruheTLB Patentseminar an der Hochschule Karlsruhe
TLB Patentseminar an der Hochschule Karlsruhe
 
Innovative UV Lampe hilft bei Hygiene energiesparen
Innovative UV Lampe hilft bei Hygiene energiesparenInnovative UV Lampe hilft bei Hygiene energiesparen
Innovative UV Lampe hilft bei Hygiene energiesparen
 
Tlb Newsletter Juni 2012
Tlb Newsletter Juni 2012Tlb Newsletter Juni 2012
Tlb Newsletter Juni 2012
 
Variable Anströmung für Abgasturbolader MEDUSA
Variable Anströmung für Abgasturbolader MEDUSAVariable Anströmung für Abgasturbolader MEDUSA
Variable Anströmung für Abgasturbolader MEDUSA
 
Unterdrückung von Reibschwingungen in KFZ-Kupplungen
Unterdrückung von Reibschwingungen in KFZ-KupplungenUnterdrückung von Reibschwingungen in KFZ-Kupplungen
Unterdrückung von Reibschwingungen in KFZ-Kupplungen
 
Heizpatrone heizkapsel gezieltes heizen von spritzgusswerkzeugen
Heizpatrone  heizkapsel gezieltes heizen von spritzgusswerkzeugenHeizpatrone  heizkapsel gezieltes heizen von spritzgusswerkzeugen
Heizpatrone heizkapsel gezieltes heizen von spritzgusswerkzeugen
 
Prozessor mit integrierter, echtzeitfähiger speicherbereinigung
Prozessor mit integrierter, echtzeitfähiger speicherbereinigungProzessor mit integrierter, echtzeitfähiger speicherbereinigung
Prozessor mit integrierter, echtzeitfähiger speicherbereinigung
 
Wer nicht erfindet, verschwindet. wer nicht patentiert, verliert (erich haeus...
Wer nicht erfindet, verschwindet. wer nicht patentiert, verliert (erich haeus...Wer nicht erfindet, verschwindet. wer nicht patentiert, verliert (erich haeus...
Wer nicht erfindet, verschwindet. wer nicht patentiert, verliert (erich haeus...
 
Cell free GPCR ligand screening assay tlb
Cell free GPCR ligand screening assay tlbCell free GPCR ligand screening assay tlb
Cell free GPCR ligand screening assay tlb
 
Optics beyond the Abbe Limit
Optics beyond the Abbe Limit Optics beyond the Abbe Limit
Optics beyond the Abbe Limit
 
Neuartige Doppelmutter für Kugelrollspindel verlängert die Lebensdauer
Neuartige Doppelmutter für Kugelrollspindel verlängert die LebensdauerNeuartige Doppelmutter für Kugelrollspindel verlängert die Lebensdauer
Neuartige Doppelmutter für Kugelrollspindel verlängert die Lebensdauer
 
Mikroskope und Mikroben (Super Resolution Mikroskopie von Bakteren & Viren)
Mikroskope und Mikroben (Super Resolution Mikroskopie von Bakteren & Viren)Mikroskope und Mikroben (Super Resolution Mikroskopie von Bakteren & Viren)
Mikroskope und Mikroben (Super Resolution Mikroskopie von Bakteren & Viren)
 
Low-cost production of therapeutics
Low-cost production of therapeuticsLow-cost production of therapeutics
Low-cost production of therapeutics
 
KMU-Erfolg durch Innovationsmanagement
KMU-Erfolg durch InnovationsmanagementKMU-Erfolg durch Innovationsmanagement
KMU-Erfolg durch Innovationsmanagement
 
Yoga + Raw Flyer
Yoga + Raw FlyerYoga + Raw Flyer
Yoga + Raw Flyer
 
Thin film solar cell based on bismuth
Thin film solar cell based on bismuthThin film solar cell based on bismuth
Thin film solar cell based on bismuth
 
New system avoids crash of railways
New system avoids crash of railwaysNew system avoids crash of railways
New system avoids crash of railways
 

Kürzlich hochgeladen

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Kürzlich hochgeladen (20)

Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

Presentation processor with integrated real time garbage collection

  • 1. A Novel RISC Processor Architecture For Garbage Collection in Embedded Systems © TLB GmbH, Karlsruhe 2012
  • 2. Buffer Overflows are Responsible for a Large Number of Today’s Security and Safety Problems  In a standard computer system, dynamically growing data structures can overwrite unrelated data (buffer overflow)  The standard processor architecture lacks protection mechanisms against buffer overflows  Buffer overflow errors are a common cause for critical security vulnerabilities © TLB GmbH, Karlsruhe 2012
  • 3. Garbage Collection Helps Reduce Buffer Overflows, But Causes High Overhead & Unpredictable Pauses  Automatic dynamic memory management automatically releases and compacts dynamically allocated memory after its last use  Such “garbage collection” reduces common error sources for buffer overflows  Existing garbage collection is mostly software-based, demands a high overhead and causes unpredictable pauses in the program execution  The limited resources of embedded systems typically do not allow for efficient garbage collection in real time © TLB GmbH, Karlsruhe 2012
  • 4. A Novel Approach Enables Parallel Garbage Collection And Parallel Synchronization in Real-Time  The novel RISC processor architecture is optimized for security:  Strict separation of pointers from ordinary non-pointer data by using distinct register sets for pointers and data  The dedicated coprocessor performs the garbage collection:  The coprocessor uses an optimized Baker-style copying collector algorithm that runs in parallel to the main processor  A new garbage collection cycle is started by the coprocessor when the available memory falls below a chosen threshold  Simple hardware extensions to the processor pipeline support the synchronization between garbage collector and main processor  Key for the efficient implementation to avoid unbounded pauses © TLB GmbH, Karlsruhe 2012
  • 5. This Novel Approach Improves Performance By Leaving The Cache Largely Unaffected  Software garbage collectors usually repeatedly displace the entire contents of the cache  Examine the entire heap during a single cycle  The coprocessor directly connects to the memory controller  Does not access memory through the main processor’s cache  The cache remains largely unaffected by the garbage collection  The coprocessor ensures cache coherency  Inspects and selectively flushes single cache lines through a dedicated cache port (resembles snoop port)  The coprocessor eliminates unnecessary memory traffic  Invalidates all cache lines with dead objects at the end of a garbage collection cycle © TLB GmbH, Karlsruhe 2012
  • 6. A Fully Functional Prototype Exists And Has Been Used For Performance Measurements  Main processor & GC Coprocessor modeled at register transfer level in VHDL, synthesized for Altera APEX 20K1000C (@ 25MHz)  Pipelined RISC processor, statically scheduled  up to 3 instructions per clock cycle (3-way multiple issue, “in order”)  16 pointer registers, 16 data registers, 8 Praedikatregister  8K execution cache, 8K data cache, 2K attribute cache  two-way set-associative copy-back cache  Micro-coded garbage collection coprocessor  256 x 80 bit on-chip microcode memory  Uses less than 20% of the chip surface area  Software  Native Java bytecode compiler developed for the architecture. An included code scheduler rearranges instructions to take advantage of the processor’s parallel execution units and to hide instruction latencies  Subset of the Java class libraries supporting text-based apps in order to facilitate the execution of representative programs (includes NFS client) © TLB GmbH, Karlsruhe 2012
  • 7. An Experimental Computer System Was Assembled Based On The Garbage-Collection Processor © TLB GmbH, Karlsruhe 2012
  • 8. Pauses Caused By Garbage Collection Do Not Exceed 500 Clock Cycles Frequency distribution of synchronization pauses (shown for javac) Frequency Pause Duration in Clock Cycles © TLB GmbH, Karlsruhe 2012
  • 9. The Runtime Overhead For The Hardware-Based Garbage Collection Is Small © TLB GmbH, Karlsruhe 2012
  • 10. The Advantages Of This Approach Could Enable Real-Time Garbage Collection in Embedded Systems  Limits pauses from garbage collection to 500 clock cycles  Efficient synchronization  No code overhead  Low total runtime overhead of only a few percent  Undisturbed cache locality  Exact (non-conservative) garbage collection  Compiler & code are independent from garbage collector © TLB GmbH, Karlsruhe 2012
  • 11. BACKUP © TLB GmbH, Karlsruhe 2012
  • 12. Efficient Implementation © TLB GmbH, Karlsruhe 2012
  • 13. Coprocessor Architecture © TLB GmbH, Karlsruhe 2012
  • 14. Synchronization I © TLB GmbH, Karlsruhe 2012
  • 15. Synchronization II © TLB GmbH, Karlsruhe 2012
  • 16. Synchronization III © TLB GmbH, Karlsruhe 2012
  • 17. Synchronization IV © TLB GmbH, Karlsruhe 2012
  • 18. The Runtime Overhead Is Small - I © TLB GmbH, Karlsruhe 2012
  • 19. The Runtime Overhead Is Small - II © TLB GmbH, Karlsruhe 2012
  • 20. The Runtime Overhead Is Small - III © TLB GmbH, Karlsruhe 2012