매스매티카 같은거 쓰면 계산할때 cpu코어가 4개라서 커널 4개 따로 열어서 동시에 서로 다른 계산 4개까지 할수 있어서 좋은데
근데 보통 서로 다른 계산 4개 할일은 잘 없고
한개의 계산을 좀 빨리 하고 싶을때는 있는데 계산 하나에 코어4개를 다 동원해서 계산을 빨리 끝낼 방법 없냐?
매스매티카 같은거 쓰면 계산할때 cpu코어가 4개라서 커널 4개 따로 열어서 동시에 서로 다른 계산 4개까지 할수 있어서 좋은데
근데 보통 서로 다른 계산 4개 할일은 잘 없고
한개의 계산을 좀 빨리 하고 싶을때는 있는데 계산 하나에 코어4개를 다 동원해서 계산을 빨리 끝낼 방법 없냐?
http://reference.wolfram.com/language/ref/Parallelize.html
계산 하는 거에 따라 다른데 위처럼 페러럴로 계산을 하는거는 특정한 계산할때만 효과가 있지 예를 들어 천가지 숫자를 더할경우 페러럴로 하면 기존방법보다 빠름// 그런데 A랑 B를 더할때 A의 결과값을 기다려야하는 경우는 페러럴로 해도 기존방법이랑 같은 시간이 나옴[박사과정 수업들을때 들었는데 다 까먹었네]
cpu코어 개수는 그럼 별의미가 없는건가
코딩으로 건드리는건 되는것도 있고 안되는것도 있는거 같고 side effect 때문에 parallel 하냐 안하냐에 따라서 다른 결과 주기도 하고 존나 빡치던데
mpi 나 mp 쓰면 병렬처리되는데 행렬계산 할때 빼고는 딱히 메리트를 못느낌
병렬 처리 안 하면 불가능함
병렬계산은 계산할 조각이 독립적이면 가능 속도효과 제대로 볼수 있음 풀수있는 문제 많이 없음 , 선후행과 같이 의존적이면 불가능