2011-05-04 3 views
4

저는 신경망 프로젝트를 수행하고 있습니다 (알고있는 선형 대수학 계산의 많은 부분) 그래서 이미 훌륭한 라이브러리 인 Jblas를 사용했지만 우분투 최신 버전 11.04를 설치 한 후에는 몇 가지 문제가 있습니다. 그것을 사용하면 (오류는 임시 bla bla를 복사 할 수 없습니다.) 어떤 일을하면 해결할 수 있습니다.행렬 라이브러리 업데이트

하지만 오류 자체는 경고였습니다. 실제로 네이티브 라이브러리를 사용해야합니까? 내가 이런 종류의 오류 (Java는 이식성이 있고 구현이 용이함 등)로 인해 C++을 이미 도주했다는 것을 알고있다.

그래서 나는 아파치 코 몬즈로 돌아갔다. (기능적으로 : 많은 패키지, 좋은 디자인) 가장 나쁜 !!

나는 딜레마에 빠지게된다. 아파치와 퍼포먼스의 퍼포먼스 요즘에는 아파치와 같은 라이브러리의 성능 저하를 무시하고 기술 향상과 새로운 프로세서의 멀티 스레딩을 고려해야 할까?

당신은

  1. 내가 아파치를 사용하는 경우, 내가 사용 JBLAS을 통해 난 절반 방법을 어떻게해야 어떻게 생각하십니까?
  2. JBLAs를 계속 사용하고 (오류 수정)
  3. 2011 년 유망한 새로운 JAVA 선형 대수 라이브러리를 사용 하시겠습니까?

편집 : 오류 : "org.jblas 오류는 링크 파일을 복사로드 할 수 없습니다에서 java.lang.UnsatisfiedLinkError : /tmp/jblas2930149998010945438libjblas_arch_flavor.so : libgfortran.so.3을 : 공유 열 수 없습니다 개체 파일 : 해당 파일이나 디렉터리가 없습니다. " 나는 그들의 Facebook Page에서 JBLAS의 저자 상담 후

그들은 설치해야 내가 libgfortran3을 필요 얘기하고, 문제는

+0

어떤 종류의 오류가 발생했는지, 어디에 있는지 잘 모르겠습니다. 우분투 11은 내가 발견 한 부정적으로 자바에 영향을 미치지 않습니다. –

+0

그것은 JBLAS에 영향을 미치지 않습니다. 오류 5 분 –

답변

0

내가 해석 생각하지 않는다 "누군가가 같은 문제를 가져옵니다 이런 경우에"해결되었다 Java와 같은 언어는 원시 코드의 원시 성능을 제공합니다. 그렇기 때문에 FORTRAN/C/C++는 여전히 과학적 컴퓨팅 분야에서 살아 있습니다. LAPACK과 같은 패키지는 내가 아는 한 여전히 여전히 표준입니다.

Colt은 나를 거짓말 장이로 만드는 지 확실하지 않습니다. 나는 개인적인 경험이 없지만, 아직도이 분야에서 일한다면 분명히 한 번해볼 것입니다.

이것이 진정 가장 큰 문제라면 JBLAS를 계속 압니다. 오류를 수정할 수 있습니다. 계속가.

+2

자바는 순전히 해석 된 언어가 아닙니다. JVM에는 바이트 코드를 매우 효율적인 네이티브 코드로 컴파일하는 JIT (just-in-time) 컴파일러가 있습니다. 자바는 네이티브 머신 코드로 컴파일되지 않기 때문에 느리지 않다. – Jesper

+1

나는 자바가 순수하게 해석되지 않는다는 것을 알고 있지만 자바가 과학적 컴퓨팅을 위해 널리 사용되지는 않았다는 사실을 바꾸지는 못한다. – duffymo

+0

이것이 유효한 인수가 아니라는 것을 알고 있다면 왜 그것을 사용하고 있습니까?참고 : 내 자신의 경험에 비추어 볼 때 JVM이 원시 번호 처리를위한 최상의 플랫폼이 아니라는 것을 알고 있습니다. 하지만 내가 아는 한 JVM이 속도보다 호환성을 선호하기 때문입니다. 예를 들어,'java.lang.Math'의 삼각법은 하드웨어의 사용 가능한 함수를 사용하는 것이 아니라 소프트웨어로 구현됩니다. 왜냐하면 이는 모든 운영 체제에서 결과가 동일하다는 것을 보장하기 때문입니다. – Jesper

2

JAMA을 성공적으로 사용했습니다. 그것은 Mathworks (Matlab의 제작자)와 NIST에 의해 만들어졌습니다. 기본 선형 대수 방법을 사용하는 멋진 패키지이지만 속도 요구 사항에 미치지 못할 수도 있습니다.

관련 문제