저는 C 코드를 다루는 초보자입니다.하지만 신경 네트워크 시뮬레이션을위한 Matlab 프로그램을 작성했으며 슈퍼 컴퓨터 클러스터가 신경망을 시뮬레이트하기위한 Matlab 프로그램을 C 코드로 변환하려고합니다. 한 번에 몇 MATLAB 시뮬레이션. 이를 위해 GotoBLAS가 행렬 수학을 처리하는 것을 발견했습니다. C에서 많은 경험이없고 외부 라이브러리를
단일 정밀 부동 소수점 연산을위한 BLAS sdot 인터페이스를 테스트했습니다. 인텔 MKL 라이브러리의 결과는 http://netlib.org/blas/에 제공된 BLAS 포트란 코드의 결과와 조금 다릅니다. MKL은 더 정확하게 나타납니다. MKL이 만든 최적화가 있습니까? 또는 MKL은이를보다 정확하게 구현하기 위해 어떻게 구현합니까?
이 실행 CUBLAS의 내 결과입니다 각 GPU (테슬라 M2050)에 대한 2 개 스트림을 사용하여 4 개 GPU에서 DGEMM 성능 DGEMM : 내 결과를 테스트 한 그들은 괜찮 ; 기본 스트림을 사용하는 버전과 비교할 때 높은 Gflops 값에 대해 우려하고 있습니다. 나는 공식 사용 플롭의 계산 오전 : 다중 스트림을 사용하는 버전 Gflops =
현재 blas 루틴에 대한 많은 호출이 포함 된 응용 프로그램을 작성하고 있습니다. 메모리 누출에 대해 정기적으로 검사합니다. 즉, dgemm 호출에서 바이트가 누락되었습니다. 전화 번호는 다음과 같습니다. // I want to multiply 2 nxn matrices and put the result into C - an nxn matrix
doub
A^T * A (A는 2000x1000 매트릭스 임) 제품을 계산하고 싶습니다. 또한 나는 오직 위 삼각형 행렬 만 풀고 싶습니다. 내부 루프에서 두 벡터의 내적을 풀어야합니다. 이제 문제가 있습니다. cblas ddot()을 사용하는 것은 루프로 내적을 계산하는 것보다 빠르지 않습니다. 이것이 어떻게 가능한지? (인텔 코어 ™ i7 CPU M620 @ 2
나는 특별한 문제가있다. 나는 MacBook에서 CUDA 4.1을 사용하여 개발 한 연구 코드가 있으며, 특히 batchedgemm을 사용하고 있습니다. 이제 다른 대학에서 대출 한 gpu 클러스터에서 실행해야합니다. 내 문제는 클러스터에 CUDA 4.0 만 설치되어 있고 빠르게 업그레이드하는 것을 꺼려한다는 것입니다. 어딘가에 batchedgemm 소스를
내가 16 코어 기계와 난처하게 병렬 프로그램을 가지고 있다고 가정 해보십시오. numpy 배열을 많이 사용하고 멀티 프로세싱을 사용하지 않는다면 아무렇지도 않게 될 것입니다 : numpy가 멀티 스레딩을 사용하는 blas 버전에 대해 빌드되었는지 확인하십시오. 그러나 멀티 프로세싱을 사용하고 있으며 모든 코어가 항상 열심히 노력하고 있습니다. 이 경우 멀
R이 내부에서 사용중인 BLAS 버전을 감지하는 방법이 있습니까? 나는 우분투를 사용하고 있으며 몇 가지 BLAS 버전이 설치되어 있습니다 - R의 관점에서 어느 것이 "활성"인지 모릅니다! 나는 Brian Ripley가 2006 년 6 월에 말했듯이 http://r.789695.n4.nabble.com/is-Rs-own-BLAS-td911515.html에
저는 몇 가지 계산을하고 있으며 다른 BLAS 구현의 힘과 약점에 대한 분석을하고 있습니다. 그러나 나는 문제에 직면했다. cuBlas를 테스트 중이므로 GPU에서 linAlg을 사용하는 것이 좋은 생각 인 것처럼 보이지만 한 가지 문제가 있습니다. 컬럼 메이저 포맷을 사용하는 cuBlas 구현은 결국 내가 필요로하는 것이 아니기 때문에 BLAS를 행렬 변
스트라이드 방식으로 메모리에 액세스하는 것이 성능 향상에 가장 적합하다는 것은 잘 알려져 있습니다. 내가 쓰기 위해 다른 지역에 액세스해야합니다 내가 읽기 메모리의 한 지역에 액세스해야하는 상황에서 , 나는 단지 보폭에 두 지역 중 하나에 액세스 할 수 있습니다 하나의 패션, 나는 보폭을 읽거나 스트라이드를 쓰는 것이 더 좋습니까? 간단한 예로, y :=