[DOCU-2034] Remove AVX/AVX2 CPU support for CPU that doesn't have this instruction set Created: 21/Jul/20  Updated: 30/Aug/21  Resolved: 21/Jul/20

Status: Closed
Project: Documentation
Component/s: None
Affects Version/s: 6.2
Fix Version/s: 6.2

Type: Task Priority: Neutral
Reporter: Richard Gange Assignee: Richard Gange
Resolution: Fixed Votes: 0
Labels: known_issues
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
causality
relation
is related to MGNLPER-133 Result ranker crashes at login Closed
Template:
Acceptance criteria:
Empty
Task DoR:
Empty
Story Points: 0.5

 Description   

Document known issue with ND4J libraries and CPU AVX/AVX2 support.

Known issue:
libnd4j binary was built with AVX/AVX2 support, but current CPU doesn't have this instruction set. Exiting now...

Check to be sure your processor has at least AVX support. For example, the Intel Xeon E5-2690 does have AVX support but not AVX2.

Solution
Exclude AVX2 libs:

<dependency>
  <groupId>org.nd4j</groupId>
  <artifactId>nd4j-native</artifactId>
  <version>${dl4jVersion}</version>
  <classifier>linux-x86_64-avx2</classifier>
</dependency>
<dependency>
  <groupId>org.nd4j</groupId>
  <artifactId>nd4j-native</artifactId>
  <version>${dl4jVersion}</version>
  <classifier>macosx-x86_64-avx2</classifier>
</dependency>
<dependency>
  <groupId>org.nd4j</groupId>
  <artifactId>nd4j-native</artifactId>
  <version>${dl4jVersion}</version>
  <classifier>windows-x86_64-avx2</classifier>
</dependency>
<dependency>
  <groupId>org.nd4j</groupId>
  <artifactId>nd4j-native</artifactId>
  <version>${dl4jVersion}</version>
  <classifier>linux-ppc64le-avx2</classifier>
</dependency>

Include libs:

<dependency>
  <groupId>org.nd4j</groupId>
  <artifactId>nd4j-native</artifactId>
  <version>${dl4jVersion}</version>
  <classifier>linux-x86_64</classifier>
</dependency>
<dependency>
  <groupId>org.nd4j</groupId>
  <artifactId>nd4j-native</artifactId>
  <version>${dl4jVersion}</version>
  <classifier>macosx-x86_64</classifier>
</dependency>
<dependency>
  <groupId>org.nd4j</groupId>
  <artifactId>nd4j-native</artifactId>
  <version>${dl4jVersion}</version>
  <classifier>windows-x86_64</classifier>
</dependency>
<dependency>
  <groupId>org.nd4j</groupId>
  <artifactId>nd4j-native</artifactId>
  <version>${dl4jVersion}</version>
  <classifier>linux-ppc64le</classifier>
</dependency>


 Comments   
Comment by Richard Gange [ 21/Jul/20 ]

If for some reason changing the libs does not work then you should be able to workaround the problem by removing the result ranker:

    <dependency>
      <groupId>info.magnolia.dx</groupId>
      <artifactId>magnolia-dx-core-webapp</artifactId>
      <type>pom</type>
      <exclusions>
        <exclusion>
          <groupId>info.magnolia.periscope</groupId>
          <artifactId>magnolia-periscope-result-ranker</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>info.magnolia.dx</groupId>
      <artifactId>magnolia-dx-core-webapp</artifactId>
      <type>war</type>
      <exclusions>
        <exclusion>
          <groupId>info.magnolia.periscope</groupId>
          <artifactId>magnolia-periscope-result-ranker</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
Generated at Mon Feb 12 01:23:28 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.