1 for 루프에서 병렬처리 1

먼저 제곱해서 \(\{1,2,3\} \longrightarrow \{1,4,9\}\)로 매핑시키는 for 루프를 작성해보자.

1 
4 
9 

그 다음으로 for 루프를 함수형 프로그래밍 팩키지 purrr을 사용해서 간결한 코드로 작성해보자. 이를 위해서 람다 무명함수를 사용해도 되고, 함수명을 외부에 명시적으로 정의해서 이를 map_dbl 함수에 넣어 계산해도 된다.

[1] 1 4 9

purrr 팩키지 map_dbl() 함수를 사용한다고 해서 코드를 간결하게 했지만 진정한 병렬처리는 furrr 팩키지를 사용해서 구현이 가능하다.

1.1 시간 측정

tictoc 팩키지를 사용하면 경과시간을 간단히 측정할 수 있다.

1 
4 
9 
3 sec elapsed

2 furrr 병렬처리

furrr 팩키지를 도입하게 되면 병렬처리 가능한 작업의 효율을 높일 수 있다. 즉, purrr 팩키지가 컴퓨터에 순차처리하던 작업을 furrr 팩키지를 통해서 순차처리가 가능하다.