Artwork

Inhoud geleverd door Adafruit Industries. Alle podcastinhoud, inclusief afleveringen, afbeeldingen en podcastbeschrijvingen, wordt rechtstreeks geüpload en geleverd door Adafruit Industries of hun podcastplatformpartner. Als u denkt dat iemand uw auteursrechtelijk beschermde werk zonder uw toestemming gebruikt, kunt u het hier beschreven proces https://nl.player.fm/legal volgen.
Player FM - Podcast-app
Ga offline met de app Player FM !

Deep Dive w/Scott: Optimize CP Garbage Collection

2:05:29
 
Delen
 

Manage episode 476647663 series 1242341
Inhoud geleverd door Adafruit Industries. Alle podcastinhoud, inclusief afleveringen, afbeeldingen en podcastbeschrijvingen, wordt rechtstreeks geüpload en geleverd door Adafruit Industries of hun podcastplatformpartner. Als u denkt dat iemand uw auteursrechtelijk beschermde werk zonder uw toestemming gebruikt, kunt u het hier beschreven proces https://nl.player.fm/legal volgen.
Join Scott as he goes over a new optimization of the CP VM's garbage collection. He'll also answer any questions folks have. Visit the Adafruit shop online - http://www.adafruit.com Thanks to dcd for timecodes 0:00 getting started 0:47 hello everyone 1:24 intro to the Adafruit Metro rp2350 microprocess 5:00 Future plans while Scott is out/part time 5:59 Fruit Jam OS - ( capture video recording ... ) 8:47 with audio - recording that shows a couple of bugs ( 128 mS gaps triggered by garbage collection ) 11:00 Audio buffer with DMA through PSRAM which was too slow ( moved to SRAM ) 15:00 Bitmaps are not DMA'ed, but are still allocated outside the Python VM 17:00 Description of GC process 18:30 Mark-and-sweep in MicroPython and CircuitPython 20:28 Changing allocation to identify if there are allocations that don't containing pointers (for GC) 21:15 Bitmap.c - 22:36 gc.c gc_mark_+subtree 23:22 micropython split heap 25:49 Shared-bindings / displayio / Bitmap.C - mp_obj_malloc() vs. m_malloc() 30:49 misc.h allocations 32:43 dive into malloc.c and gc.c 44:00 continuing debugging with gdb 49:00 perhaps renaming the function will clarify things 53:22 gc_realloc() 56:17 if block is moved, need to copy the state 1:06:00 How do these improvements apply to micropython 1:09:10 Assertion failure in gc.c 1:13:51 Allocation/Debugging tools 1:28:42 handling re-alloc 1:31:55 consider TLSF tradeoffs 2:01:09 will be pushing the code to the leaf allocation branch 2:06:39 wrap up - should be here next week ----------------------------------------- LIVE CHAT IS HERE! http://adafru.it/discord Subscribe to Adafruit on YouTube: http://adafru.it/subscribe New tutorials on the Adafruit Learning System: http://learn.adafruit.com/ -----------------------------------------
  continue reading

5237 afleveringen

Artwork
iconDelen
 
Manage episode 476647663 series 1242341
Inhoud geleverd door Adafruit Industries. Alle podcastinhoud, inclusief afleveringen, afbeeldingen en podcastbeschrijvingen, wordt rechtstreeks geüpload en geleverd door Adafruit Industries of hun podcastplatformpartner. Als u denkt dat iemand uw auteursrechtelijk beschermde werk zonder uw toestemming gebruikt, kunt u het hier beschreven proces https://nl.player.fm/legal volgen.
Join Scott as he goes over a new optimization of the CP VM's garbage collection. He'll also answer any questions folks have. Visit the Adafruit shop online - http://www.adafruit.com Thanks to dcd for timecodes 0:00 getting started 0:47 hello everyone 1:24 intro to the Adafruit Metro rp2350 microprocess 5:00 Future plans while Scott is out/part time 5:59 Fruit Jam OS - ( capture video recording ... ) 8:47 with audio - recording that shows a couple of bugs ( 128 mS gaps triggered by garbage collection ) 11:00 Audio buffer with DMA through PSRAM which was too slow ( moved to SRAM ) 15:00 Bitmaps are not DMA'ed, but are still allocated outside the Python VM 17:00 Description of GC process 18:30 Mark-and-sweep in MicroPython and CircuitPython 20:28 Changing allocation to identify if there are allocations that don't containing pointers (for GC) 21:15 Bitmap.c - 22:36 gc.c gc_mark_+subtree 23:22 micropython split heap 25:49 Shared-bindings / displayio / Bitmap.C - mp_obj_malloc() vs. m_malloc() 30:49 misc.h allocations 32:43 dive into malloc.c and gc.c 44:00 continuing debugging with gdb 49:00 perhaps renaming the function will clarify things 53:22 gc_realloc() 56:17 if block is moved, need to copy the state 1:06:00 How do these improvements apply to micropython 1:09:10 Assertion failure in gc.c 1:13:51 Allocation/Debugging tools 1:28:42 handling re-alloc 1:31:55 consider TLSF tradeoffs 2:01:09 will be pushing the code to the leaf allocation branch 2:06:39 wrap up - should be here next week ----------------------------------------- LIVE CHAT IS HERE! http://adafru.it/discord Subscribe to Adafruit on YouTube: http://adafru.it/subscribe New tutorials on the Adafruit Learning System: http://learn.adafruit.com/ -----------------------------------------
  continue reading

5237 afleveringen

Alle episoder

×
 
Loading …

Welkom op Player FM!

Player FM scant het web op podcasts van hoge kwaliteit waarvan u nu kunt genieten. Het is de beste podcast-app en werkt op Android, iPhone en internet. Aanmelden om abonnementen op verschillende apparaten te synchroniseren.

 

Korte handleiding

Luister naar deze show terwijl je op verkenning gaat
Spelen