I updated to the newest version of WL one of two days ago, and my Windows desktop restarted last night and had some updates installed. Today WealthLab randomly crashes for a few times (Sometime it crashed while starting, and sometime it crashed while i worked on strategy backtesting). I was able to find the following crash logs from Windows events. Seems there were slightly different for different crash instances . Could the WL developers take a look? Thanks.



Rename
This looks to me like a hardware/memory issue actually. Those are access violations and the error message says "This is often an indication that other memory is corrupt."
QUOTE:
This looks to me like a hardware/memory issue actually.
I agree. If it were an application problem (e.g., .NET 8 throwing a reference pointer), we would all be seeing it, which isn't the case.
I would run a memory checkerboard test on all your RAM memory. Let it run overnight if necessary.
It's "possible" it could be a memory management issue with the MMU code of the BIOS firmware. I would flash update your BIOS firmware first. Who's BIOS is your motherboard using and what's its version number? (Have you discussed the BIOS version number with the motherboard manufacture? What are its outstanding MMU bugs?) Recall, its the MMU hardware that triggers the BIOS trap routine that reports the "memory access violation" to the OS.
Can you reproduce the problem on another machine (different RAM memory and BIOS firmware)?
Unlike most applications, WL's demand on memory is very high. So if the MMU isn't mapping virtual-to-physical memory just right (e.g. throwing a mapping register), WL is sure to hit it. Smaller apps shouldn't notice.
Thanks Glitch and superticker.
I did a few things but they did not help so I need to investigate more.
1. Memory test (using mdsched.exe and a memory stress test tool), both came out fine and no issue was identified.
2. Updated BIOS, chipset drivers to the latest version (it was last updated in September so it was not quite old).
3. reinstalled WL extensions.
I did a few things but they did not help so I need to investigate more.
1. Memory test (using mdsched.exe and a memory stress test tool), both came out fine and no issue was identified.
2. Updated BIOS, chipset drivers to the latest version (it was last updated in September so it was not quite old).
3. reinstalled WL extensions.
QUOTE:
I did a few things but they did not help
I think it's time to call the motherboard manufacture. Be sure to have the version number of your BIOS handy when you call because they will want to know that; check System Information. What you need to find out is if there are outstanding MMU code problems with your BIOS, and when they might release a fix for them?
Although the MMU may have 32 pairs of mapping registers, a Windows application might only get allocated 5 pairs. Obviously, a memory hog like WL is going to have physical memory fragmented more than 5 ways, so the MMU code (of the BIOS) needs to juggle a bunch of register pairs during execution. That juggling is error prone and it may take 1 to 3 years to squash all those bugs since they aren't that reproducible. If you have a reliable protocol to reproduce such a MMU bug, you might consider sending your machine (or motherboard and software) to the BIOS vendor.
There can be other problems with your motherboard. But since this problem seems to only occur with an application that's a memory hog (such as WL), I'm inclined to think it's an MMU register juggling bug in the BIOS. However, if the motherboard manufacture offers to swap your motherboard for a new one, I would take them up on their offer just the same--fingers crossed.
QUOTE:
3. reinstalled WL extensions.
Well, if you made the WL memory footprint smaller (removed unused extensions and simulated over a smaller Data Range) so the MMU code wouldn't have to juggle mapping registers as much, that would "mask" the problem. But that doesn't fix the MMU code bug.
WL not working ... Installed updates. Restarted computer... Eats up CPU but "nothing happens", but even before the update it was "wonky'
Window's are "frozen" etc.
Absolutely smashes the memory and I have a LOT of it.
Window's are "frozen" etc.
Absolutely smashes the memory and I have a LOT of it.
I'm not sure whether the following could be the exact cause but my issue seems to be gone now.
It might be related to custom indicators I created in WealthLab quite some time ago. I mean those that were directly created in WL, not the ones through Visual Studio. I noticed last night that every time I restart WL, the DLLs for these indicators are updated (they got new modified timestamps), and then I tried to open one of the indicators, and I got the following error in the screenshot. I noticed it complained about the .NET runtime DLL (clrjit.dll), which was also seen in some of the crash logs. So I deleted all the indicators and restarted WL. This was done last night and so far I was unable to reproduce the issue with many tries. I'll see whether it will come back.
It might be related to custom indicators I created in WealthLab quite some time ago. I mean those that were directly created in WL, not the ones through Visual Studio. I noticed last night that every time I restart WL, the DLLs for these indicators are updated (they got new modified timestamps), and then I tried to open one of the indicators, and I got the following error in the screenshot. I noticed it complained about the .NET runtime DLL (clrjit.dll), which was also seen in some of the crash logs. So I deleted all the indicators and restarted WL. This was done last night and so far I was unable to reproduce the issue with many tries. I'll see whether it will come back.
QUOTE:
It might be related to custom indicators I created in WealthLab ... it complained about the .NET runtime DLL (clrjit.dll)
Just to clarify, unlike C++, C# and .NET run under "managed memory". So unlike C++ where you can throw a pointer and get a memory access violation, you cannot do so with C# (typically) because you're required to address data structures with indexes, not pointers.
Now there are always weird exceptions, but typically with managed memory and garbage collection, a memory access violation shouldn't happen because of a software bug.
Now you bring up a weird exception involving the CLR (.NET run-time) and the JIT (Just-In-Time) compiler you cite as clrjit.dll. Yes, the Windows-updated clrjit DLL may have a new weird bug leading to a memory access violation under specific circumstances. But I would prefer to think the clrjit is causing some weird "protection switches" for the MMU that the MMU code (in the BIOS) can't handle. And this weird event is why this BIOS bug has not been found and patched as yet.
Bottom line, we have a perfect storm of weird events, which is going to make reproducing the BIOS protection-switching bug very hard to find and patch. If you can find a way to mask and avoid this BIOS bug, that "might" be one solution.
Thanks @superticker. I definitely did not have any unmanaged/unsafe code in my indicators. As you said it might be bugs in some system lib or others.
I searched the error and seems it's not very uncommon, with different kind of reasons. https://stackoverflow.com/questions/4074585/attempted-to-read-or-write-protected-memory-this-is-often-an-indication-that-ot.
For me since it's working now so I'll just let it go and focus on other things, unless it comes back again.
I searched the error and seems it's not very uncommon, with different kind of reasons. https://stackoverflow.com/questions/4074585/attempted-to-read-or-write-protected-memory-this-is-often-an-indication-that-ot.
For me since it's working now so I'll just let it go and focus on other things, unless it comes back again.
Any way to uninstall TWS (IBKR) w/out starting up cause as soon as I start up the program (freezes) and i cannot switch between windows etc.
Remove the WealthLab.InteractiveBrokers.dll and WealthLab.InteractiveBrokers.wpf.dll files from the WL8 installation folder.
Looks like the IBKR addin was the problem... TKS..
Your Response
Post
Edit Post
Login is required