Skip to content
This repository has been archived by the owner on Dec 21, 2023. It is now read-only.

Illegal instruction (core dumped) error after Turicreate version 5.4 #2266

Closed
halilkabaca opened this issue Aug 24, 2019 · 7 comments · Fixed by #2727
Closed

Illegal instruction (core dumped) error after Turicreate version 5.4 #2266

halilkabaca opened this issue Aug 24, 2019 · 7 comments · Fixed by #2727

Comments

@halilkabaca
Copy link

Hello,

I have an old Dell Optiplex 330 desktop with Xeon E5420 and If i try to install Turi Create version later than 5.4 I get Illegal instruction (core dumped) error when i try to import it. If i use 5.4 or earlier it works.

What has changed after version 5.4 that could cause this?

Looking forward to hearing from you
Regards
Halil

@TobyRoseman
Copy link
Collaborator

@halilkabaca - what operating system are you using? Also is there any additional information you can give us (such as a stack trace)?

@halilkabaca
Copy link
Author

Operating system:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.5 LTS
Release: 16.04
Codename: xenial

Dump:
I only have this entry on /var/log/syslog:

Aug 25 07:06:55 elastic kernel: [97665.124790] traps: python[24248] trap invalid opcode ip:7f0999b7c684 sp:7ffec75bb7a0 error:0 in libunity_shared.so[7f0998fcb000+21e600$

Does that help?

@halilkabaca
Copy link
Author

Same happens on my Dell PowerEdge 6850 server with 4 Xeon 3.16 MP Cpus. Can it be related to Xeon?

@syoutsey
Copy link
Collaborator

Seems to be caused by the fix for #1441.

@syoutsey syoutsey added the p1 label Aug 29, 2019
@syoutsey syoutsey added this to the 5.8 milestone Aug 29, 2019
@hoytak
Copy link
Collaborator

hoytak commented Sep 4, 2019

Yes. The specific part of this is that commit 4c43bc upgrades the march target to nehalem, which includes the SSE 4.2 and POPCNT/LZCNT instructions, which we use in some of the core routines. The rather ancient Xeon E5420 processor does not have these. It's possible to compile an egg with a legacy version of all of these, but our newer dependencies will also start requiring some of these instructions, so changing this on our end might not solve all of this and also may impact performance of some routines.

It's unclear what to do here.

@nickjong nickjong modified the milestones: 5.8, 6.0 Sep 5, 2019
@syoutsey
Copy link
Collaborator

syoutsey commented Nov 7, 2019

Keeping open during 6.0 to evaluate instruction set compatibility with manylinux2010.

@syoutsey
Copy link
Collaborator

BRB: manylinux2010 now dictates what instruction sets we support, we should follow this.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants