loop 연산으로 행렬곱구하는게 속도가 넘나 느려서 빠르게만들고싶어요!
loop 순서 바꾸거나 unrolling, stack 변수할당, new/malloc, 행열변환, tiling, openmp, assembly programming,
intel SIMD vectorization 등으로 속도 빠르게만들수잇는분잇나여?
개인적으로 논의좀드리고싶은데 ㅠㅠ
loop 연산으로 행렬곱구하는게 속도가 넘나 느려서 빠르게만들고싶어요!
loop 순서 바꾸거나 unrolling, stack 변수할당, new/malloc, 행열변환, tiling, openmp, assembly programming,
intel SIMD vectorization 등으로 속도 빠르게만들수잇는분잇나여?
개인적으로 논의좀드리고싶은데 ㅠㅠ
있음. 근데 나 비쌈.
어 수업과제면 니가 해야지... 먄약 연속 행렬 연산이 많다면 행렬 B 를 90도 회전시켜 캐시 효율을 높이는것도 방법.
행렬 dispose 해주는 SIMD 코드들 참고하면 도움 될꺼야.
감성팔이 하는건 죄송한데 이런 말도안되는 프로젝트 잇다고는 생각도 못하고 수업을 들어서.
어떻게 대행부탁드리면 안될까요 개인적으로... 구질구질하지만 제가 변명을 하자면 2010년에 c수업 한번듣고 프로그래밍이라고는 matlab 잠시 한거말고는 없는데 갑자기 컴공전공을 들어버려서 저만 못하고잇는상황이에요 ㅠ 시험도 평균도안되고..
http://fastcpp.blogspot.kr/2013/03/efficient-processing-of-arrays-using.html
이런것도 보구~
난 그런거 안해줌. 동기부여가 안됨. 열심히 해봐~
페이는 과제완료해주시면 7~8 생각하고있는데 이게 제 최대치라서 ..
넵 ㅠ
포기하면편합니다
나도 이거 숙제였는데 쉽던데
한 Element 당 1개 Thread 로 만들어서 돌리면 빠를까 안빠를까..?
만약 할꺼면 해보고 후기나좀 말해줭
저번에 들었을때는 그냥 풀어놓기만하면 적당히 컴파일러가 최적화하는건줄 알았는데 명시적으로 네덩이씩 연산하는게 있네
그건 행렬 연산이 직교하기 때문이고 세로측이 캐시효율이 무척 나쁘기 때문이야
행렬의 가로 폭이 클 경우 세로 이동은 캐시미스를 야기하지
이거 어차피 행렬식이란건 컴파일타임때 크기같은게 정해질텐데 *연산자 적당히 오버라이딩해서 첨부터 뒤집어지게 저장하고 그러면 될듯
ㅋㅋ 어리석은 생각.
어느쪽이 우항이 될지는 비결정적 문제 아님?
이건 잘만들려면 한도 끝도 없는 문제예용.
ㄴ 바부야 그런 문제가 아냐 ㅋㅋㅋ
메모리는 어차피 1차원 배열이야. 변수 연산 하나 풀어서 1~2% 성능향상 시킨다고 되는 문제가 아님.
이게 그거때문에 그러는거죠 열은 메모리가 연속이 아닌데 저번에 알려주신거처럼 메모리를 읽으면 오른쪽것도 조금씩 준비해두는거
한번에 읽기도 애매하고
행렬연산의 항이 작으면 그냥 변수 한개지. 1 * 1 짜리. 행렬 연산이 문제가 되는건, 가로폭이 클때 세로 접근이 캐시 단위를 넘어선다는거야. 캐시미스에서의 비용이 10배 이상의 성능손실을 가져온다는거야. 순차접근에서 페이지 넘어가는거랑 차원이 달라. 다른데서 10~20% 성능향상 시켜두, 캐시 땜에 1%로 줄어버리는거야.
그래서 캐시 접근을 최적화 하려는 테크닉들이 있는거구.
이씨... 로우레벨 좀 공부좀 해
전혀 측정을 못하고 있잖아. ㅋㅋㅋ
ㅋㅋㅋㅋ
평소 성능 측정도 좀 하면서 코딩해. 그럼 됨.
어떤 방법이 무지 빠르고 어떤 방법이 무지 느리면, 그게 상위( 전략적 ) 알고리즘 적인 차이가 아닐때, 시스템적 배경지식이 필요하다는거야.
음, 좋은 알고리즘 써서 C 로 돌린것 보다, 후진 알고리즘 써서 C 로 돌리는게 더 빠른 경우가 있어.
그게 로우레벨을 알아야하는 이유야.
이론과 실제는 다르다 는 말이, 이론의 결핍에서 오는 이야기잖아?
ㅋㅋㅋㅋ 삼촌이 문제를 전혀 이해하지 못하고 있고, 캐시를 공부해야 한다에 전재산을 건다.
얘는 참조와 복사도 제대로 모르고 있군.
복사 비용이 비싸다한들 2배를 안넘어. 참조도 포인터 연산이야. 근데 이건 10배 차이나는 문제야.
위에 50개의 댓글중에 이해가가는게 1도없네여
ㄹㅇ 무슨소린지모르겟네요진짜
이거못해 물어볼정도면 나도 삼촌님예상이 맞을듯 코세님수준까지 생각도 안하는 수준일것같은데
coding the matrix란 책 참고해보시길 한국책임