newsletters:2024-11
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
newsletters:2024-11 [2024/12/01 02:48] – [New Folk evaluator] osnr | newsletters:2024-11 [2024/12/01 04:09] (current) – osnr | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== November 2024 newsletter | + | ====== November 2024 newsletter ====== |
(Our next Folk open house is [[https:// | (Our next Folk open house is [[https:// | ||
Line 7: | Line 7: | ||
==== Small system improvements ==== | ==== Small system improvements ==== | ||
- | * TODO: Print notice when you hit Print, both on web and tabletop editor | + | * Andrés added: |
- | * TODO: New /programs design with categories; much easier to read | + | * Print notice when you hit Print, both on web and tabletop editor |
+ | * {{newsletters:img_8911-medium.jpeg? | ||
+ | * New '' | ||
+ | * {{: | ||
==== New Folk evaluator ==== | ==== New Folk evaluator ==== | ||
Line 19: | Line 22: | ||
There' | There' | ||
+ | |||
+ | Notice how the camera hits 60fps but the full-frame detection is only 20-30fps (this is using a 1080p image): | ||
+ | |||
+ | {{: | ||
=== The bugfixes and improvements === | === The bugfixes and improvements === | ||
Line 40: | Line 47: | ||
* now runs on an independent clock from the frames! every 2ms | * now runs on an independent clock from the frames! every 2ms | ||
* hack for ' | * hack for ' | ||
+ | * incremental tag detection to be able to hit 60fps | ||
Line 48: | Line 56: | ||
Performance (CPU, stack) profiling is most of what I'm up to now, trying to eliminate the blinking. | Performance (CPU, stack) profiling is most of what I'm up to now, trying to eliminate the blinking. | ||
- | I've already fixed a lot of weird issues | + | I've already fixed a lot of weird issues |
- | I'm surprised at how much of the flamegraphs are just threading stuff, not Tcl-bound. Maybe I'm misreading and need different graphs. | + | {{: |
+ | |||
+ | I'm surprised at how much of the flamegraphs are just threading stuff, not Tcl-bound. Maybe I'm misreading and need different graphs | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Now working on actually using [[https:// | ||
== Heap profiling == | == Heap profiling == | ||
- | There are still persistent and pretty bad memory leaks on folk2, from 10MB to 200MB per second depending on how much stuff is out. I want to get to these soon after fixing | + | There are still persistent and pretty bad memory leaks on folk2, from 10MB to 200MB per second depending on how much stuff is out. I want to get to these soon after I fix the performance stuff. |
=== Various unsuccessful quests === | === Various unsuccessful quests === | ||
* Heap profiling with gperftools | * Heap profiling with gperftools | ||
+ | * Too slow, doesn' | ||
* mimalloc arenas | * mimalloc arenas | ||
+ | * Might still be useful for images and stuff, but we'd need to migrate the arena between matches and statements as statements get reused, it's more complicated than expected | ||
* Sealed Tcl objects | * Sealed Tcl objects | ||
* I had been hoping to do this forever -- it seems elegant and cool and efficient -- but it turned out to be much harder than expected when I looked at it -- would need to change a lot of callsites in Jim Tcl (anywhere it shimmers an object) to make it work, or do horrible hacks with COW pages. | * I had been hoping to do this forever -- it seems elegant and cool and efficient -- but it turned out to be much harder than expected when I looked at it -- would need to change a lot of callsites in Jim Tcl (anywhere it shimmers an object) to make it work, or do horrible hacks with COW pages. | ||
+ | * {{: | ||
* CPU-oriented scheduling | * CPU-oriented scheduling | ||
* Spinlocks | * Spinlocks | ||
* [[https:// | * [[https:// | ||
* I got too excited since we have fairly tight locking discipline in folk2 | * I got too excited since we have fairly tight locking discipline in folk2 | ||
+ | * Look at all this spinning; it's not an improvement over mutexes: | ||
+ | * {{: | ||
==== RFID localization ==== | ==== RFID localization ==== | ||
Line 97: | Line 116: | ||
These are all ' | These are all ' | ||
- | I've been talking about a trigger button for a while. Realized that some commercially available camera grips just use an audio jack. This seems good. Threw it into part orders and will probably throw it into next design rev. | + | I've been talking about a trigger button for a while, but been blocked by figuring out what connectors/ |
- | I'm thinking about the Super Mario Galaxy Wii remote interactions and sounds | + | as for what to do with the trigger button, |
(I also threw a speaker into part orders.) | (I also threw a speaker into part orders.) | ||
Line 145: | Line 164: | ||
* Gadget autoadjust exposure maybe? | * Gadget autoadjust exposure maybe? | ||
* RFID | * RFID | ||
+ | * Actually revisit video support | ||
+ | * More convenient shader language | ||
+ | * Experiment with more tangible papercraft interface elements for Folk programs (using cardboard, rubberbands, | ||
+ | * Revisit a bunch of smaller system improvements that we've had in the backlog for a while | ||
===== Links we've enjoyed ===== | ===== Links we've enjoyed ===== | ||
Line 159: | Line 182: | ||
==== Andrés ==== | ==== Andrés ==== | ||
- | + | * [[https:// | |
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * Leaflet is hosting an online [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// |
newsletters/2024-11.1733021319.txt.gz · Last modified: 2024/12/01 02:48 by osnr