azonenberg changed the topic of #scopehal to: libscopehal, libscopeprotocols, and glscopeclient development and testing | https://github.com/azonenberg/scopehal-cmake, https://github.com/azonenberg/scopehal-apps, https://github.com/azonenberg/scopehal | Logs: https://freenode.irclog.whitequark.org/scopehal
<azonenberg> also update from UPS, my boards finally left shenzhen
<azonenberg> probe PCBs are ETA Monday
<azonenberg> I expect this version to meet the specs i put on the kickstarter but i think i can still do better
<azonenberg> ok so at this point i have all of scopehal compiling with the new sample format
<azonenberg> scopeprotocols and scopemeasurements are basically entirely commented out, but what is left compiles
<azonenberg> working on getting glscopeclient itself to compile now, OscilloscopeWindow has several errors and i suspect other classes (especially WaveformArea) still need a lot of work
<azonenberg> hoping in the next few hours i'll have a basic #nofilter (just viewing waveforms, no analysis) version on the new architecture ready for testing
Degi has quit [Ping timeout: 265 seconds]
Degi has joined #scopehal
<azonenberg> well, i got it to compile
<azonenberg> aaaand its segfaults as soon as i actually try to *run* it...
<azonenberg> but hey, progress :p
<azonenberg> woo i have a waveform
<_whitenotifier-c> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±6] https://git.io/Jf0JT
<_whitenotifier-c> [scopehal-apps] azonenberg b9d6dcb - Refactoring: use new Waveform class
<_whitenotifier-c> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±1] https://git.io/Jf0kc
<_whitenotifier-c> [scopehal-apps] azonenberg 5a5c289 - Improved robustness to malformed input files or missing protocol decodes
<_whitenotifier-c> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±1] https://git.io/Jf0mC
<_whitenotifier-c> [scopehal-apps] azonenberg 217f06f - Disabled OMP in PrepareGeometry as it seemed to make things worse
<_whitenotifier-c> [scopehal] azonenberg pushed 4 commits to master [+1/-4/±49] https://git.io/Jf0YJ
<_whitenotifier-c> [scopehal] azonenberg 3228e7f - Refactoring: use new Waveform class. Most decoders disabled since they're not ported to the new object model yet.
<_whitenotifier-c> [scopehal] azonenberg d8a4981 - Refactored first few filters to use new Waveform class
<_whitenotifier-c> [scopehal] azonenberg 778a1e4 - DifferenceDecoder: restructured inner loop to be vectorization friendly
<_whitenotifier-c> [scopehal] azonenberg 51ffa1c - Uncommented debug message
<azonenberg> ok so at this point the new object model is working but i have ~40 filters not yet ported to it
<azonenberg> funkylab[m]: so i did a bunch of optimizations and also bumped the waveform size up to 5M points from 1M since there seems to be a fair bit of overhead on the scope for each trigger
<azonenberg> my most recent test downloaded and processed 92 quad channel waveforms (total 1840M points, 14.7 Gbits) in a minute which comes out to an average rate of 245 Mbps
<azonenberg> this is pulling waveforms off the scope, subtracting the two diffpairs, 10/100 eth protocol decode on both channels, CDR and eye patterns on both channels, and bathtub plots
<azonenberg> so in total that's ten filters in the graph
<azonenberg> and during all of this there's enough idle time that the UI remains very responsive, i can pan around the views with only a little bit of jerkiness
<azonenberg> this is despite the fact that i'm pushing waveform data to the GPU every frame regardless of whether it's new or not, because some of the conversion from time to screen space happens CPU-side,
<azonenberg> porting that to the compute shader that does rendering is already on the agenda but it hasnt happened yet
<azonenberg> at this point i'm pretty happy with the new object model so i'll probably spend most of tomorrow porting the remaining filters to it
<azonenberg> Deleted a bunch of dead code, removed some overhead, and even vectorized the "subtract" filter. I think there's a lot of room to optimize further wrt special casing sparse/dense sample storage but that's for later
<azonenberg> the new model has proven its worth so i'll go from there
juli964 has joined #scopehal
bvernoux has joined #scopehal
maartenBE has quit [Ping timeout: 264 seconds]
maartenBE has joined #scopehal
bvernoux has quit [Quit: Leaving]