azonenberg changed the topic of #scopehal to: libscopehal, libscopeprotocols, and glscopeclient development and testing |,, | Logs:
<juli965> azonenberg: yes changing it to ffts/ffts.h let me compile it. I was also able to compile it without the -DLIBFFTS flags.
<juli965> Now I'm getting a Segmentation Fault on Startup. I'm not sure but I replaced aligned_alloc with _aligned_malloc in WaveformArea_rendering and AlignedAllocator perhaps that's not the right replacement?
Degi has quit [Ping timeout: 264 seconds]
Degi_ has joined #scopehal
Degi_ is now known as Degi
electronic_eel has quit [Ping timeout: 265 seconds]
electronic_eel has joined #scopehal
<azonenberg> juli965: have you done any investigation to figure out where? backtrace?
<azonenberg> _aligned_malloc needs to be paired with _aligned_free
<azonenberg> so if it's freeing that memory with free() that might be the problem
_whitelogger has joined #scopehal
<azonenberg> monochroma: attempting to simulate some MAXWELL geometry in the sonnet pro demo with all 8 layers
<azonenberg> but first i need to shrink the board to something that fits
<azonenberg> the sonnet geometry editor does not scale well to complex things with lots of segments, like ground pours
<azonenberg> there's some poor scaling somewhere
Nero_ has joined #scopehal
Nero_ is now known as NeroTHz
<azonenberg> NeroTHz: So i got the sonnet demo license straightened out
<azonenberg> And i discovered that the geometry editor does *not* like my board the size of a sheet of A4 paper
<azonenberg> I deleted as much as i could outside the region of interest in a gerber editor but i had trouble trimming the ground and power pours
<azonenberg> so i was hoping to use the sonnet editor to trim that. Problem is, when i click and drag to select the stuff i want to highlight, it takes many minutes to respond :p
<azonenberg> So clearly i need to find a better way of chopping down giant designs so i can simulate pieces of them
<azonenberg> Are your EM sims mostly board level, chip level, or what? i.e. working with GDS, gerbers, custom drawn geometry?
<Degi> Nice! @ license
<azonenberg> Degi: now i just have to do as much as i can by september 10th when it expires lol
<Degi> lol
<azonenberg> as of now i intend to upgrade to gold at the end of the year if i can find budget
<azonenberg> i hoooope to get pro next year
<azonenberg> we'll see
azonenberg has quit [Ping timeout: 244 seconds]
azonenberg has joined #scopehal
electronic_eel has quit [Ping timeout: 256 seconds]
electronic_eel has joined #scopehal
<juli965> So I think I checked all free()'s and the only free without _aligned_free() was in the AlignedAllocator but it makes no difference, Segmentation fault is still there.
<azonenberg> juli965: did you try attaching a debugger to see where the crash is?
<juli965> No actually not. You know a good tutorial for debugging Windows Applications? Actually I only did that with Visual Studio.
<azonenberg> I havent done windows dev in over a decade
<azonenberg> when i did, i used visual studio 2005 :p
<azonenberg> You can probably use gdb from the mingw shell too
<azonenberg> If that's more your style
<juli965> Ok I think I will read me through it :D The problem seems to come from libscopehal.dll and it tries to read Address 0xFFFFFFFFFFFFFFFF
<azonenberg> If you can narrow it down to a function/line it will be much easier to investigate
<juli965> Yes,sorry I have now gdb on it and let it run until I got into the SIGSEGV and use then where.
<juli965> So it prints _mm256_load_si256 avxitnrin.h :910 and it gets called from LeCroyOscilloscope::Convert8BitSamplesAVX2 : 1415
<azonenberg> Ok
<azonenberg> let's see...
<azonenberg> Oh
<azonenberg> I bet i know what's going on
<azonenberg> Do you know how to navigate stack frames in gdb?
<juli965> Not really
<azonenberg> run "bt" to display a backtrace
<azonenberg> then "frame 12345" to navigate to a particular frame from that trace
<azonenberg> Go to the Convert8BitSamplesAVX2 frame if you're not in it already, not sure if the intrinsic shows up as its own frame or not
<azonenberg> then print &ones_x4
<juli965> The frame number is the # number ?
<azonenberg> Yeah
<azonenberg> it's probably frame 0 or 1
<juli965> Yes it was #1 ok I printed it $1 = (int64_t (*)[4]) 0xdccf4d0
<azonenberg> Aaand that's the problem
<azonenberg> It's aligned on a 16-byte boundary
<azonenberg> not 32, as needed for AVX instructions
<azonenberg> i guess gcc on linux correctly aligned it but on windows it didn't
<azonenberg> So i just need to add some directives to force the compiler to align it properly
<azonenberg> gimme a few
<juli965> Oh ok that makes sense
<azonenberg> yeah i did aligned allocations for all of the input and output buffers
<azonenberg> forgot about the constants, lol
<azonenberg> Try changing lines 1405-1407 to declare "int64_t __attribute__ (aligned(32))) ..."
<azonenberg> if that works i'll commit the fix
<azonenberg> Just went back and checked the other AVX optimizations i did over the weekend and this appears to be the only instance of this bug
<juli965> Oh yes, I get Waveforms :-) Thanks!
<_whitenotifier-b> [scopehal] azonenberg pushed 1 commit to master [+0/-0/±1]
<_whitenotifier-b> [scopehal] azonenberg c96f62d - LeCroyOscilloscope: fixed missing alignment specifier for constants in Convert8BitSamplesAVX2
<azonenberg> juli965: what scope are you using, out of curiosity?
<azonenberg> i think you're the only lecroy user here other than me and lain/monochroma
<juli965> I actually using an old WaveRunner 64Xi from the office. But I also have a Rohde&Schwarz HMO2024 but only with RS232.
<azonenberg> Let me add this to the list of supported scopes then
<azonenberg> what's the series, waverunner 6Xi?
<juli965> I think just Waverunner Xi
<azonenberg> oh the 6 is the bandwidth not the family number
<azonenberg> Got it
<azonenberg> Glad to know hardware that old still works
<azonenberg> I mean i'm not surprised, it worked on a DDA5005A which is about the same era
<azonenberg> what's it run, windows xp?
<azonenberg> 2000?
<juli965> It's XP
<azonenberg> ah ok so yeah about the same age as monochroma's dda
<azonenberg> Hers is 5 GHz but not really usable at that bandwidth because only 10 Gsps so you literally barely hit nyquist
<azonenberg> Is this your first time using glscopeclient or had you used it before on linux successfully?
<juli965> I tried it once before but I hadn't a Linux Machine with OpenGL (just using Linux on my server and a VM) so I waited until there was a Windows manual.
<azonenberg> ah ok
<azonenberg> well glad you got it to run
<azonenberg> the windows build is still pretty experimental, as you can see it's not nearly at the level of maturity of the linux version
<azonenberg> but the software is cross platform enough most things should work well
<juli965> Yes and that time I was trying it I tried to write a driver for my Rohde&Schwarz but it was pretty slow perhaps because of RS232 or I write it really bad and so I waited until I have a LeCroy here on my desk.
<juli965> Thinking about getting a better Scope with Ethernet sometime at home.
<juli965> But I want to test it in office I think with Eye Diagrams and the protocol decoders it would be really nice to check some PCB's.
<azonenberg> Probably because of rs232 :p
<azonenberg> and yeah does lecroy even have eye diagram or decode capabilities on that scope?
<azonenberg> i looked at the docs when you mentioned what it was and literlaly the only decode i saw available as an option was CAN
<juli965> Yes afaik is CAN Decoding the only decode option. All the more interesting Protocol decoders are implemented in the newer scopes.
<azonenberg> And thats the nice thing about using glscopeclient
<azonenberg> it doesnt care what scope you're using, only about sample rate and bandwidth because physics
* miek shakes fist at physics
<azonenberg> Lol
<azonenberg> I still need to make an AVX version of the sample conversion loop for HDOs
<azonenberg> right now i only have the 8-bit one
juli965 has quit [Quit: Nettalk6 -]
juli965 has joined #scopehal
NeroTHz has quit [Ping timeout: 272 seconds]
juli965 has quit [Quit: Nettalk6 -]
m4ssi has joined #scopehal
Nero_ has joined #scopehal
Nero_ is now known as Guest8496
Guest8496 is now known as NeroTHz
m4ssi has quit [Remote host closed the connection]
NeroTHz has quit [Read error: Connection reset by peer]
m4ssi has joined #scopehal
m4ssi has quit [Remote host closed the connection]
<miek> i had a go at soldering up an sma earlier and yeah, that magic heatsink/jig thing is necessary
<miek> the problem seems to be that the only reference plane is the little chunk of dielectric in there, but when you heat it up it can slide forward