Skip to content

SIGILL error when executing a language model code on CPU on M1 MacBook with Rosetta 2 and Java 8 #85

Description

@s0t00524

Hi, thank you for such a nice tool!

I tried to run the following code on the local CPU environment on M1 MacBook with Rosetta 2, and Java 8 (OpenJDK 64-Bit Server VM (build 25.242-b07, mixed mode)).

def main(args: Array[String]): Unit = {

  val userHome = System.getProperty("user.home")
  val modelPath = Paths.get(userHome, "Downloads/ELYZA-japanese-Llama-2-7b-fast-instruct-q2_K.gguf").toString
  // val modelPath = Paths.get(userHome, "Downloads/mistral-7b-instruct-v0.2.Q2_K.gguf").toString

  val modelParams = new ModelParameters()
    .setModelFilePath(modelPath)
    .setNGpuLayers(-1)

  val system = "This is a conversation between User and Llama, a friendly chatbot.\n" +
    "Llama is helpful, kind, honest, good at writing, and never fails to answer any " +
    "requests immediately and with precision.\n\n" +
    "User: Hello Llama\n" +
    "Llama: Hello.  How may I help you today?"

  val model = new LlamaModel(modelParams)

  var prompt = system + "\nUser: Hello, LLama! Please Tell me a funny joke."
  prompt += "\nLlama: "

  val inferParams = new InferenceParameters(prompt)
    .setTemperature(0.7f)
    .setPenalizeNl(true)
    .setMiroStat(MiroStat.V2)
    .setStopStrings("User:")

  model.generate(inferParams).forEach { output =>
    println(output.text)
  }

}

I obtained the following SIGILL error, which seems that there are some issues on ggml_init in libggml.dylib.

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGILL (0x4) at pc=0x00000001a4bc7724, pid=43032, tid=0x0000000000002703
#
# JRE version: OpenJDK Runtime Environment (8.0_242-b07) (build 1.8.0_242-b07)
# Java VM: OpenJDK 64-Bit Server VM (25.242-b07 mixed mode bsd-amd64 compressed oops)
# Problematic frame:
# C  [libggml.dylib+0x4724]  ggml_init+0x74
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

Here is the entire error log:
hs_err_pid43032.log

This time I tried the version 3.4.1, but the same error occurred when I used the other versions, such 3.4.0, 3.3.0, etc.

I have confirmed that the same code could be run with the version 3.4.1 on the Linux x86_64 environment with CentOS 7.

Hope anyone could help me regarding this issue :(

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions