1

当我尝试使用 Matlab 进行一些协方差计算时出现此错误。我正在从 win 2008 服务器 64 位应用程序上的 .NET 2.0 应用程序调用 matlab。我从 matlab 得到的异常消息是“评估函数错误,SEGV:严重错误”

I am copying the dump file from the matlab crash. Any help is really appreciated, thanks in advance.

This is the Exception information I see in the Dump file:

**"The Thread tried to read from or write to an virtual address for which it does not have the appropriate access"**

------------------------------------------------------------------------
       Segmentation violation detected at Thu Aug 22 15:05:20 2013
------------------------------------------------------------------------

Configuration:

  MATLAB Version:   7.9.0.529 (R2009b)
  MATLAB License:   unknown
  Operating System: Microsoft Windows Server Longhorn
  Window System:    Version 6.0 (Build 6002: Service Pack 2)
  Processor ID:     x86 Family 6 Model 14 Stepping 6, GenuineIntel
  Virtual Machine:  Java 1.6.0_45-b06 with Sun Microsystems Inc. Java HotSpot(TM) 64-Bit Server VM mixed mode
  Default Encoding:  windows-1252

Fault Count: 1

Register State:

  rax = 00000000c0000005      rbx = 0000000024c25e40
  rcx = 000000001f517950      rdx = 000000001f517108
  rbp = 0000000000000050      rsi = 0000000000000020
  rdi = 0000000000000000      rsp = 000000001f518750
   r8 = 000000001ed23000      r9 = ffffffffc0000005
  r10 = 000000001f518690      r11 = 000000001f517788
  r12 = 0000000076df54e3      r13 = 00000000fffffd66
  r14 = 0000000079f5d05d      r15 = 0000000079f5d05d
  rip = 000000001f518830      flg = 0000000000010202

Stack Trace:

  [  0] 0000000076CBAF46     KERNEL32.dll+110406 (FlsSetValue+000422)

  [  1] 0000000076CB1CF7     KERNEL32.dll+072951 (GetEnvironmentVariableA+000311)

  [  2] 000000007005DDB6     mkl.dll+384438 (xerbla+310678)

  [  3] 0000000079F5D05D     libmwmathlinalg.dll+249949 (mfMatrixMult+006973)

  [  4] 0000000024C25E40     libiomp5md.dll+024128 (kmp_set_defaults+015320)

  [  5] 000000007004EDAC     mkl.dll+322988 (xerbla+249228)

  [  6] 0000000074F1EC7F     MSVCR80.dll+191615 (mbsnbicoll_l+000351)

  [  7] 0000000074EF6DFB     MSVCR80.dll+028155 (free+000027)

  [  8] 0000000074F1CDEC     MSVCR80.dll+183788 (_crtGetStringTypeW+001724)

  [  9] 0000000074F524B3     MSVCR80.dll+402611 (makepath_s+000947)

  [ 10] 0000000024C2EB3B     libiomp5md.dll+060219 (ompc_set_num_threads+000031)

  [ 11] 000000007C8816A0     libmwblas.dll+071328 (ztrsv+027816)

  [ 12] 000000007C8817C0     libmwblas.dll+071616 (ztrsv+028104)

  [ 13] 000000007C857B45     libmwbinder.dll+031557 (Binder::_load_and_resolve+001445)

  [ 14] 000000007C8816A0     libmwblas.dll+071328 (ztrsv+027816)

  [ 15] 0000000076E19915     ntdll.dll+301333 (AlpcGetMessageAttribute+002309)

  [ 16] 0000000079FFA250     libmwmathlinalg.dll+893520 (SparseLUFactor::`vftable'+004576)

  [ 17] 0000000079FFA24C     libmwmathlinalg.dll+893516 (SparseLUFactor::`vftable'+004572)

 [ 18] 000000007CEC9272     libmx.dll+037490 (mxCharMatrixToStrings_UTF8+000194)
4

1 回答 1

1

恐怕我不知道是什么导致了您的错误或如何解决它。

但是 MATLAB永远不应该像这样的 SEGV。即使你做了坏事或不受支持的事情,它也应该优雅地出错并告诉你出了什么问题。

如果您可以重现地获得此 SEGV 错误,请将其作为错误报告给 MathWorks。他们可能会或可能不会发现您是否做错了什么,并且可能会或可能不会提出解决方法或解决方案 - 但他们需要了解 SEGV。

向 MathWorks 报告问题时,如果可能,请报告一个可重现的最小案例,并确保描述系统的所有方面(操作系统、MATLAB、.NET 等)。

于 2013-08-23T12:05:37.567 回答