Open suomi-miartem opened 3 years ago
I tried to reproduce this on Ubuntu 21.04, but couldn't. Maybe it only appears on Windows, but could you describe exactly, which letters you are passing to the program to trigger the error? Any letter or only specific ones? Could you perhaps even try to find out in which line exactly the error happens (e.g. with simple prints)?
@mvieth , it doesn't depend of letter type. Maybe I should notice that this bug appears when a debugger steps on line with any [features/normal3d] object before command line parsing part (lines 273-279, 284-286). I downloaded 12.0.0 PCL twice, but every time this bug with normals appeared...
Can you try another tutorial that uses NormalEstimation
, e.g. this one?
@suomi-miartem Could you try enable AVX on your project. I just ran your code and I cannot get it to crash.
Could also be a debug/release mismatch - you can see this using the dependency walker.
@mvieth , I ran the code from your example, but in Release mode it gave me the same "unhandled exception in features.dll" error. The only difference was that in my code, when starting the project in Debug mode, the debugger stopped at line 227 in the "feature.hpp" file (PCL 1.12.0 \ include \ pcl-1.12 \ pcl \ features \ impl \ feature. hpp), and in the code from your example - on the 281st line in the file "pcd_io.hpp" (PCL 1.12.0 \ include \ pcl-1.12 \ pcl \ io \ pcd_io.h)...
@larshg , AVX gave me nothing :( How can I fix the version mismatch if this is indeed the cause of my problem (I'm not sure about this yet)? Also, dependency walker hangs while analyzing π
Alright, I'll just try to use previous PCL version (1.11.1), but that 1.12.0 bug is still actual.
Even though this answer is quite old, it could still be relevant. https://stackoverflow.com/questions/14401024/unhandled-exception-at-0x52f9e470-in-project1-exe-0xc000001d-illegal-instruc
What CPU do you have?
Can you post a screenshot of the stack frame when the exception occours?
@larshg , Jeez, I am pretty grateful to you for this link! IDK what kind of magic do you use to find this relevant thread π I will report about my success to work without SSE instructions (I really have AMD processor) tomorrow
Oki. The All-In-One installer is build with both SSE and AVX, so you would have to compile PCL yourself, to have it without those instructions.
If you want you can try follow this guideline https://github.com/larshg/pcl/blob/UpdateWindowsTutorial/doc/tutorials/content/pcl_vcpkg_windows.rst To install dependencies or even PCl using VCPKG.
You might still need to checkout the 1.12 PR on VCPKG if it is not merged yet.
Else you probably need to stay on 1.11 :-)
Nah, compiling PCL by hand turned out to be too time consuming for me, so I scored it and went back to version 1.11.1. Nevertheless, if someone had a similar problem after updating the version of the library, then they can participate in this thread. Therefore, I close the issue.
Could you try using a tool like this https://docs.microsoft.com/en-us/sysinternals/downloads/coreinfo
And post the results. Then we could have a look if the SSE or AVX is supported?
And lets keep it open, as there is no confirmation yet what the error is, nor yet a solution.
Here is my SSE/AVX support information. As you can see, my PC supports them: SSE Supports Streaming SIMD Extensions SSE2 Supports Streaming SIMD Extensions 2 SSE3 Supports Streaming SIMD Extensions 3 SSSE3 Supports Supplemental SIMD Extensions 3 SSE4a Supports Streaming SIMDR Extensions 4a SSE4.1 Supports Streaming SIMD Extensions 4.1 SSE4.2 * Supports Streaming SIMD Extensions 4.2
AVX * Supports AVX instruction extensions AVX2 - Supports AVX2 instruction extensions AVX-512-F - Supports AVX-512 Foundation instructions AVX-512-DQ - Supports AVX-512 double and quadword instructions AVX-512-IFAMA - Supports AVX-512 integer Fused multiply-add instructions AVX-512-PF - Supports AVX-512 prefetch instructions AVX-512-ER - Supports AVX-512 exponential and reciprocal instructions AVX-512-CD - Supports AVX-512 conflict detection instructions AVX-512-BW - Supports AVX-512 byte and word instructions AVX-512-VL - Supports AVX-512 vector length instructions
Thanks. That rules out the instruction set then.
Could you try launch it in debug and post the stacktrace when it crash?
Chiming in with a different problem, but it may be related. For me PCL 1.12.1 all-in-one installer fails on 2 machines (works fine on many others I'm using):
windows-latest
action runnersThe problem is that pcl_io.dll
fails to load. Running under the debugger (on the Parallels VM) I see that it gets an illegal instruction (I presume in the initialization routine of pcl_io.dll
, but I cannot check). The instruction is a VPXOR
instruction.
Tried running in Debug (because then I have the libpcl .pdb
files, and I hoped that would give me a usable stack trace): no problem, everything runs fine.
Reverted to PCL 1.11.1: everything runs fine.
I realise this is not much of a bug report, I'm posting it mainly (and posting it with this error report) in the hope it'll spark an "aha" with the pcl developers.
Describe the bug
An error of unhandled exception in "pcl_features.dll" occures while running my program.
Context
I tried to run a bit modified demonstrational example of PCL Visualizer and an error had occured while program was running.
Expected behavior
When you enter a letter, the associated rendering method is executed.
Current Behavior
After running the program, the error "Unhandled exception at 0x00007FFAC37E029B (pcl_features.dll) in [example_name].exe: 0xC000001D: Illegal Instruction." appears, and debugger prints "the symbol file was not loaded". Moreover, the error manifests itself precisely on version 1.12.0 - in the previous version (1.11.1) everything works fine.
To Reproduce
My code:
Your Environment (please complete the following information):
Possible Solution
I suppose "pcl_features.dll" was corrupted while making new release.